我正在创建的新网站上收到此未捕获的 TypeError,但我无法找出导致错误的原因。
我在下面的链接中重新创建了问题,如果您查看浏览器的 JS 控制台,您会看到错误发生,但没有其他任何反应。
代码:
$('.newsitem').hover(
$(this).children('.text').animate({ height: '34px' }),
$(this).children('.text').animate({ height: '0px' }));
我正在创建的新网站上收到此未捕获的 TypeError,但我无法找出导致错误的原因。
我在下面的链接中重新创建了问题,如果您查看浏览器的 JS 控制台,您会看到错误发生,但没有其他任何反应。
代码:
$('.newsitem').hover(
$(this).children('.text').animate({ height: '34px' }),
$(this).children('.text').animate({ height: '0px' }));
请务必将它们包装在异步回调中:
$('.newsitem').hover(
function() {
$(this).children('.title').animate({height:'34px'});
}, function() {
$(this).children('.title').animate({height:'0px'});
}
);
你错过了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'
});
});
而<code>$(this).children('.text'),没有选择任何东西。
使用幻灯片动画来处理 .text 类的高度。
$('.newsitem').hover(function() {
$(this).children('.text').slideToggle();
});