当使用Jquery事件监听器时,使用Jquery.animate会减慢速度
Jquery .animate slows with use when using jquery event listeners
我正在构建一个混合移动应用程序,使用具有触摸支持的Jquery事件侦听器来创建交互,但我在事件侦听器调用使用.animate
的函数时遇到了问题。第一次animate
工作得很好,但第二次更慢,第三次甚至更慢。从日志中可以看出,每次调用函数时,事件侦听器似乎都会将对函数的调用乘以2。
我已经将问题缩小到事件侦听器,因为当在chrome-dev工具中手动调用该函数时,该函数可以完美地工作。我已经尝试过使用jquery .on
和.one
事件侦听器。下面是我的代码,如果能得到一些建议就太好了。。。
HTML
<div id="closeIcon"></div>
和JS。。。
$('#closeIcon').one("tap", closeLogin);
function closeLogin(){
$('#userContainer').animate({'padding-top': '120px'}, 500);
$('#contentContainer').animate({'height': '682px'}, 500, function(){
unselectUser();
$('#loginContainer').empty();
$('#loginContainer').css('visibility', "hidden");
});
}
试试这个:
$('#closeIcon').one("tap", closeLogin);
function closeLogin(e){
e.stopImmediatePropagation();
$('#userContainer').animate({'padding-top': '120px'}, 500);
$('#contentContainer').animate({'height': '682px'}, 500, function(){
unselectUser();
$('#loginContainer').empty();
$('#loginContainer').css('visibility', "hidden");
});
}
相关文章:
- 可以'使用jQuery animate时无法看到动画
- 如何使用jquery animate来回移动多个元素
- jQuery animate()函数没有't设置动画
- JQuery.animate();不以固定高度工作
- 有没有一种方法可以用步骤递归调用jQuery animate()
- jquery animate无法正常工作
- JQuery.animate()菜单幻灯片返回
- jQuery animate只在单击时工作一次
- 如何在不使用css转换的情况下将jQuery animate与css3属性相结合
- Implementation of jQuery 'animate' with Meteor
- jQuery Animate 在创建图库滑块时不起作用
- jQuery animate 会中断空格键滚动
- Jquery Animate on IE makes error
- 使用 jQuery animate 时绘制一个又一个对象的线条
- Jquery animate 不能与 IE 一起使用 - 什么也没发生
- 只执行一次jquery animate
- 第一个jQuery.animate()不工作
- 使用jquery animate()在文本上实现反弹效果
- jquery .animate 回调自动执行
- jQuery+Animate.css动画只工作一次,动画不会重置