关于jq的一个问题

$('.next').click(function(){
$('ul').animate({
'left':'300px'
})
$('ul').css('left','1400px')
});
我同时设置了2次left值,为什么下面的会失效?
函数式编程
浏览 372回答 2
2回答

叮当猫咪

动画的执行会有时间,下面的设置并没有失效,而是被动画的效果覆盖了。如果你仔细观察,会发现,在动画的过程中,left突然变了很大,然后又变回来。如果想在动画完成后,实现一些操作,可以发在回调里。$('.next').click(function(){$('ul').animate({'left':'300px'},function(){$('ul').css('left','400px')})});

慕村9548890

因为实际上它的执行顺序是:$('ul').css('left','1400px')$('ul').css('left','300px')但第一步瞬间完成,接下来开始动画效果的第二步,所以给你的感觉是第一步失效了。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript