jquery中animate动画积累的解决方法


Posted in Javascript onOctober 05, 2013

昨天一同学向我求助,说做了一个简单的动画效果,就是图片自动左右播放

<span style="white-space:pre"> </span>/* 无缝式焦点图 */ 
var _left = 770; 
var left = -_left;//-770 
function slideImg() { 
if(left == -3080 || left == 0) { 
_left = -_left; 
} 
$('.slidepics').animate({'left': left + 'px'},1000); 
left = left - _left; 
tim = setTimeout(slideImg,5000); 
} 
slideImg();

我瞅了下,挺简单的,乍一看,没啥问题啊。后来他就说了困扰他一个月的奇怪问题,他说窗口在最前端时是ok,但把窗口最小化或是浏览其他窗口时就话出现快速的播放,过了一会儿又正常了(ie是没问题的,chrome有问题,firefox也没问题)。 由于以前也没遇到过此问题,我也是想了半个多小时,没搞定,后来翻了翻以前做的笔记,有了答案,那个setTimeout使用时会产生动画队列,有可能是在chrome浏览器中窗口不处于最前端时动画的队列产生积累,当回归最前端时便一下子爆发出来了,于是想到jquery中的stop方法,该方法是停止所有在此元素上的动画。果然,加上后就ok了

<span style="white-space:pre"> </span>/* 无缝式焦点图 */ 
var _left = 770; 
var left = -_left;//-770 
function slideImg() { 
if(left == -3080 || left == 0) { 
_left = -_left; 
} 
$('.slidepics').stop().animate({'left': left + 'px'},1000); 
left = left - _left; 
tim = setTimeout(slideImg,5000); 
} 
slideImg();
Javascript 相关文章推荐
实现变速回到顶部的JavaScript代码
May 09 Javascript
Jquery 模板数据绑定插件的使用方法详解
Jul 08 Javascript
JavaScript实现简单的时钟实例代码
Nov 23 Javascript
JS交换变量的方法
Jan 21 Javascript
js的window.showModalDialog及window.open用法实例分析
Jan 29 Javascript
jQuery使用hide方法隐藏元素自身用法实例
Mar 30 Javascript
angularjs客户端实现压缩图片文件并上传实例
Jul 06 Javascript
JS+CSS实现大气清新的滑动菜单效果代码
Oct 22 Javascript
JS学习之表格的排序简单实例
May 16 Javascript
详解vuex中mapState,mapGetters,mapMutations,mapActions的作用
Apr 13 Javascript
vue脚手架搭建过程图解
Jun 06 Javascript
基于Vue中的父子传值问题解决
Jul 27 Javascript
jQuery.fn和jQuery.prototype区别介绍
Oct 05 #Javascript
javascript 函数声明与函数表达式的区别介绍
Oct 05 #Javascript
javascript自启动函数的问题探讨
Oct 05 #Javascript
纯js简单日历实现代码
Oct 05 #Javascript
JS教程:window.location使用方法的区别介绍
Oct 04 #Javascript
js中单引号与双引号冲突问题解决方法
Oct 04 #Javascript
jquery parent和parents的区别分析
Oct 02 #Javascript
You might like
操作Oracle的php类
2006/10/09 PHP
Discuz 模板语句分析及知识技巧
2009/08/21 PHP
php合并js请求的例子
2013/11/01 PHP
PHP中通过fopen()函数访问远程文件示例
2014/11/18 PHP
Zend Framework数据库操作技巧总结
2017/02/18 PHP
JQuery 动画卷页 返回顶部 动画特效(兼容Chrome)
2010/02/15 Javascript
web前端开发也需要日志
2010/12/09 Javascript
js中方法重载如何实现?以及函数的参数问题
2013/08/01 Javascript
JavaScript1.6数组新特性介绍以及JQuery的几个工具方法
2013/12/06 Javascript
jQuery实现列表自动滚动循环滚动展示新闻
2014/08/22 Javascript
js实现文本框选中的方法
2015/05/26 Javascript
JavaScript多图片上传案例
2015/09/28 Javascript
js实现卡片式项目管理界面UI设计效果
2015/12/08 Javascript
三种Node.js写文件的方式
2016/03/08 Javascript
在web中js实现类似excel的表格控件
2016/09/01 Javascript
js实现移动端轮播图效果
2020/12/09 Javascript
JavaScript实现页面中录音功能的方法
2019/06/04 Javascript
vue 实现 rem 布局或vw 布局的方法
2019/11/13 Javascript
JavaScript实现简易聊天对话框(加滚动条)
2020/02/10 Javascript
Python导入oracle数据的方法
2015/07/10 Python
Python彩色化Linux的命令行终端界面的代码实例分享
2016/07/02 Python
Python实现矩阵转置的方法分析
2017/11/24 Python
Python实现基于二叉树存储结构的堆排序算法示例
2017/12/08 Python
django将图片上传数据库后在前端显式的方法
2018/05/25 Python
面向初学者的Python编辑器Mu
2018/10/08 Python
Tesserocr库的正确安装方式
2018/10/19 Python
如何给Python代码进行加密
2020/01/10 Python
捷克玩具商店:Bambule
2019/02/23 全球购物
迪士尼英国官方商店:shopDisney UK
2019/09/21 全球购物
办理护照介绍信
2014/01/16 职场文书
外贸员简历中的自我评价
2014/03/04 职场文书
工会趣味活动方案
2014/08/18 职场文书
三峡导游词
2015/01/31 职场文书
解除处分决定书
2015/06/25 职场文书
2016春节放假通知范文
2015/08/18 职场文书
Nginx的反向代理实例详解
2021/03/31 Servers