未捕获的TypeError:对象[object Object]没有方法'apply'

时间:2012-06-14 12:03:25

标签: javascript jquery

我在我正在创建的新网站上收到此Uncaught TypeError,但我无法解决导致错误的原因。

我已经在下面的链接中重新创建了这个问题,如果你看看你的浏览器JS控制台,你会看到错误发生,但没有其他事情发生。

http://jsfiddle.net/EbR6D/2/

代码:

$('.newsitem').hover(
$(this).children('.text').animate({ height: '34px' }), 
$(this).children('.text').animate({ height: '0px'  }));​

4 个答案:

答案 0 :(得分:5)

确保将它们包装在异步回调中:

$('.newsitem').hover(
    function() {
        $(this).children('.title').animate({height:'34px'});
    }, function() {
        $(this).children('.title').animate({height:'0px'});
    }
);
​

答案 1 :(得分:3)

你需要:

.hover(function(){ ... });

根据documentation

答案 2 :(得分:2)

你错过了function ...

$('.newsitem').hover(
    $(this).children('.text').animate({height:'34px'}),
    $(this).children('.text').animate({height:'0px'})
);

要:

$('.newsitem').hover(function() {
    $(this).children('.text').animate({
        height: '34px'
    });
}, function() {
    $(this).children('.text').animate({
        height: '0px'
    });
});​
​

$(this).children('.text')并未选择任何内容。

答案 3 :(得分:0)

使用幻灯片动画来处理.text类的高度。

$('.newsitem').hover(function() {
    $(this).children('.text').slideToggle();
});​
​