延时重复执行函数 lLoopRun.js


Posted in Javascript onMay 08, 2007

公司的一个项目中,有许多地方需要延时执行一些可重复性的函数(动作),就写了下面这段函数。
呵呵,不知道取什么意思更为确切些,就定为了:LoopRun,意为“重复执行” 
function lLoopRun(sFuncLoop,sFuncEnd,nDelay) {
  var vintervalId = null;
  var runString  = sFuncLoop;
  var stopString  = sFuncEnd;
  var delayTime  = nDelay;
  //var nCount = 0;
  this._doLoop = function (){
    if (vintervalId && !eval(stopString)){
      eval(runString);
      //nCount++;
    } else {
      window.clearInterval(vintervalId);
      vintervalId = null;
    }
  }
  window.clearInterval(vintervalId);
  vintervalId = window.setInterval(this._doLoop,delayTime);
}

参数说明:
sFuncLoop >> 字符串型,需要重复执行的Javascript函数或语句(多个函数或语句请用;分隔)
sFuncEnd >> 字符串型,用于中止重复执行动作(sFuncLoop)的Javascript函数或语句
nDelay >> 数字型,重复执行的时间间隔(毫秒数)
应用实例:
水平往复运动: http://cnlei.iecn.net/mycode/lLoopRun/index.html
自动伸缩大小: http://cnlei.iecn.net/mycode/lLoopRun/index2.html
垂直往复运动: http://cnlei.iecn.net/mycode/lLoopRun/index3.html
渐变显示(图片): http://cnlei.iecn.net/mycode/lLoopRun/index4.html

以上只是几个简单的应用实例,具体应用时关键还得看sFuncLoop和sFuncEnd这两个参数所代表的函数写得是否好,例如给实例一中的运动图片加上缓冲运行的效果的话,就需要在sFuncLoop所代表的函数中加上相应的实现代码:)

Javascript 相关文章推荐
js下用层来实现select的title提示属性
Feb 23 Javascript
用简洁的jQuery方法toggleClass实现隔行换色
Oct 22 Javascript
javascript实现删除前弹出确认框
Jun 04 Javascript
在JavaScript中操作时间之getYear()方法的使用教程
Jun 11 Javascript
AngularJS入门教程之AngularJS表达式
Apr 18 Javascript
想学习javascript JS和jQuery哪个重要 先学哪个
Dec 11 Javascript
jQuery插件ImgAreaSelect实现头像上传预览和裁剪功能实例讲解一
May 26 jQuery
原生js中ajax访问的实例详解
Sep 19 Javascript
自定义Vue组件打包、发布到npm及使用教程
May 22 Javascript
实例详解带参数的 npm script
May 28 Javascript
Vue基于iview table展示图片实现点击放大
Aug 05 Javascript
UEditor 自定义图片视频尺寸校验功能的实现代码
Oct 20 Javascript
用js判断浏览器是否是IE的比较好的办法
May 08 #Javascript
[全兼容哦]--实用、简洁、炫酷的页面转入效果loing
May 07 #Javascript
javascript之水平横向滚动歌词同步的应用
May 07 #Javascript
javascript之ESC(第二类混淆)
May 06 #Javascript
通过Unicode转义序列来加密,按你说的可以算是混淆吧
May 06 #Javascript
使用正则替换变量
May 05 #Javascript
又一个小巧的图片预加载类
May 05 #Javascript
You might like
PHP 高手之路(三)
2006/10/09 PHP
PHP计算当前坐标3公里内4个角落的最大最小经纬度实例
2016/02/26 PHP
PHP长网址与短网址的实现方法
2017/10/13 PHP
PHP7.3.10编译安装教程
2019/10/08 PHP
js 自定义的联动下拉框
2010/02/07 Javascript
基于jquery的web页面日期格式化插件
2011/11/15 Javascript
jQuery在html有效在jsp无效的原因及解决方法
2013/08/02 Javascript
js实现在字符串中提取数字
2013/11/05 Javascript
JavaScript数组函数unshift、shift、pop、push使用实例
2014/08/27 Javascript
超精准的javascript验证身份证号的具体实现方法
2015/11/18 Javascript
使用AJAX实现Web页面进度条的实例分享
2016/05/06 Javascript
jQuery 常用代码集锦(必看篇)
2016/05/16 Javascript
js 截取或者替换字符串中的数字实现方法
2016/06/13 Javascript
Javascript中的对象和原型(二)
2016/08/12 Javascript
jQuery中slidedown与slideup方法用法示例
2016/09/16 Javascript
利用CSS、JavaScript及Ajax实现图片预加载的方法
2016/11/29 Javascript
探索Javascript中this的奥秘
2016/12/11 Javascript
vue学习笔记之指令v-text && v-html && v-bind详解
2017/05/12 Javascript
使用nodeJs来安装less及编译less文件为css文件的方法
2017/11/20 NodeJs
Seajs源码详解分析
2019/04/02 Javascript
vue组件是如何解析及渲染的?
2021/01/13 Vue.js
python cookielib 登录人人网的实现代码
2012/12/19 Python
Python with的用法
2014/08/22 Python
Python实现八大排序算法
2016/08/13 Python
Python实现修改文件内容的方法分析
2018/03/25 Python
浅谈django框架集成swagger以及自定义参数问题
2020/07/07 Python
HTML5单页面手势滑屏切换原理分析
2017/07/10 HTML / CSS
HTML5 textarea高度自适应的两种方案
2020/04/08 HTML / CSS
StubHub澳大利亚:购买或出售您的门票
2019/08/01 全球购物
瑞士图书网站:Weltbild.ch
2019/09/17 全球购物
在阿尔卑斯山或希腊度过快乐假期:Alpine Elements
2019/12/28 全球购物
公司年会主持词
2014/03/22 职场文书
四风问题个人剖析材料
2014/10/07 职场文书
2014党的群众路线教育实践活动学习心得体会
2014/10/31 职场文书
毕业实习计划书
2015/01/16 职场文书
nginx前后端同域名配置的方法实现
2021/03/31 Servers