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类和继承 constructor属性
Mar 04 Javascript
JS 屏蔽键盘不可用与鼠标右键不可用的方法
Nov 18 Javascript
javascript四舍五入函数代码分享(保留后几位)
Dec 10 Javascript
js常用数组操作方法简明总结
Jun 20 Javascript
微信小程序中hidden不生效原因的解决办法
Apr 26 Javascript
easyui简介_动力节点Java学院整理
Jul 14 Javascript
Express的HTTP重定向到HTTPS的方法
Jun 06 Javascript
Vue 莹石摄像头直播视频实例代码
Aug 31 Javascript
vuex实现的简单购物车功能示例
Feb 13 Javascript
js验证身份证号码记录的方法
Apr 26 Javascript
微信小程序实现Swiper轮播图效果
Nov 22 Javascript
JavaScript数组reduce()方法的语法与实例解析
Jul 07 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
PHP 各种排序算法实现代码
2009/08/20 PHP
谷歌音乐搜索栏的提示功能php修正代码
2011/05/09 PHP
php文件上传、下载和删除示例
2020/08/28 PHP
PHP仿微信发红包领红包效果
2016/10/30 PHP
checkbox 多选框 联动实现代码
2008/10/22 Javascript
如何使用jQuery来处理图片坏链具体实现步骤
2013/05/02 Javascript
选择器中含有空格在使用示例及注意事项
2013/07/31 Javascript
如何动态的导入js文件具体该怎么实现
2014/01/14 Javascript
探讨跨域请求资源的几种方式(总结)
2016/12/02 Javascript
jquery自定义插件结合baiduTemplate.js实现异步刷新(附源码)
2016/12/22 Javascript
Javascript下拉刷新的简单实现
2017/02/14 Javascript
浅谈angularjs中响应回车事件
2017/04/24 Javascript
详解使用nodeJs安装Vue-cli
2017/05/17 NodeJs
Vue核心概念Action的总结
2019/01/18 Javascript
vue 中Virtual Dom被创建的方法
2019/04/15 Javascript
vue无限轮播插件代码实例
2019/05/10 Javascript
layer页面跳转,获取html子节点元素的值方法
2019/09/27 Javascript
Vue-cli3项目引入Typescript的实现方法
2019/10/18 Javascript
让mocha支持ES6模块的方法实现
2020/01/14 Javascript
npx create-react-app xxx创建项目报错的解决办法
2020/02/17 Javascript
Python Deque 模块使用详解
2014/07/04 Python
Django JWT Token RestfulAPI用户认证详解
2019/01/23 Python
Python守护进程实现过程详解
2020/02/10 Python
python matplotlib模块基本图形绘制方法小结【直线,曲线,直方图,饼图等】
2020/04/26 Python
pycharm 实现调试窗口恢复
2021/02/05 Python
蔻驰意大利官网:COACH意大利
2019/01/16 全球购物
英国标志性生活方式品牌:Skinnydip London
2019/12/15 全球购物
生日邀请函范文
2014/01/13 职场文书
自动化专业职业生涯规划书范文
2014/01/16 职场文书
公司成本主管岗位责任制
2014/02/21 职场文书
人事科岗位职责范本
2014/03/02 职场文书
2014年中学生检讨书大全
2014/10/09 职场文书
父亲节感言
2015/08/03 职场文书
golang 定时任务方面time.Sleep和time.Tick的优劣对比分析
2021/05/05 Golang
SQL之各种join小结详细讲解
2021/08/04 MySQL
Python数据结构之队列详解
2022/03/21 Python