为了账号安全,请及时绑定邮箱和手机立即绑定

关于jq的一个问题

关于jq的一个问题

函数式编程 2019-04-21 20:43:02
$('.next').click(function(){$('ul').animate({'left':'300px'})$('ul').css('left','1400px')});我同时设置了2次left值,为什么下面的会失效?
查看完整描述

2 回答

?
叮当猫咪

TA贡献1776条经验 获得超12个赞

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

TA贡献1884条经验 获得超4个赞

因为实际上它的执行顺序是:$('ul').css('left','1400px')
$('ul').css('left','300px')
但第一步瞬间完成,接下来开始动画效果的第二步,所以给你的感觉是第一步失效了。
                            
查看完整回答
反对 回复 2019-04-21
  • 2 回答
  • 0 关注
  • 371 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信