首页 > web前端 > js教程 > 正文

javascript延时重复执行函数 lLoopRun.js_javascript技巧

php中文网
发布: 2016-05-16 19:11:48
原创
1826人浏览过

function lLoopRun(sFuncLoop,sFuncEnd,nDelay) {
//writen by http://fengyan.iecn.cn

//sFuncLoop >> 字符串型,需要重复执行的Javascript函数或语句(多个函数或语句请用;分隔)  
//sFuncEnd >> 字符串型,用于中止重复执行动作(sFuncLoop)的Javascript函数或语句 
//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;
   }
   //document.getElementById("TestCount").innerHTML = nCount;//输出执行次数//为便于测试,应用时就将此行注释掉
 }
 window.clearInterval(vintervalId);
 vintervalId = window.setInterval(this._doLoop,delayTime);
}

几个实例代码:
水平往复运动: 

 

 
lLoopRun.js 应用实例:水平往复运动 
 
 
 
<script></script>
 
 

执行次数:0

Stable Video
Stable Video

Stability AI 发布的开源AI视频大模型,用文字或图像创建视频,把你的概念变成迷人的电影

Stable Video 227
查看详情 Stable Video

javascript延时重复执行函数 lLoopRun.js_javascript技巧
<script> <br><!-- <br>function chgPos(sId,n){ <br> var o = document.getElementById(sId); <br> o.style.left = (parseInt(o.style.left)+n)+"px"; <br>} <br><br>function chgPosStop(sId,nMax){ <br> var o = document.getElementById(sId); <br> if(parseInt(o.style.left)<0){isReBack = false;} <br> if(parseInt(o.style.left)>nMax){isReBack = true;} <br> if(isReBack) { <br> nNum=-Math.abs(nNum); <br> } else { <br> nNum=Math.abs(nNum); <br> } <br>} <br><br>var nNum=10; <br>var isReBack = false; <br>lLoopRun("chgPos(&#146;IECN&#146;,nNum);","chgPosStop(&#146;IECN&#146;,600)",20); <br>--> <br></script>
 
 


自动伸缩大小: 
 
 
lLoopRun.js 应用实例:自动伸缩大小 
 
 
<script></script>
 
 

执行次数:0


javascript延时重复执行函数 lLoopRun.js_javascript技巧
<script> <br><!-- <br><br>function chgPos(sId,n){ <br> var o = document.getElementById(sId); <br> o.width = (parseInt(o.width)+n); <br>} <br><br>function chgPosStop(sId,nMax){ <br> var o = document.getElementById(sId); <br> if(parseInt(o.width)<10){isReBack = false;} <br> if(parseInt(o.width)>nMax){isReBack = true;} <br> if(isReBack) { <br> nNum=-Math.abs(nNum); <br> } else { <br> nNum=Math.abs(nNum); <br> } <br> //return parseInt(o.style.left)>nMax || (parseInt(o.style.top)>nMax-200); <br>} <br><br>var nNum=10; <br>var isReBack = false; <br>lLoopRun("chgPos(&#146;IECN&#146;,nNum);","chgPosStop(&#146;IECN&#146;,500)",20); <br>--> <br></script>
 
 


垂直往复运动: 
 
 
lLoopRun.js 应用实例:垂直往复运动 
 
 
 
<script></script>
 
 

执行次数:0


javascript延时重复执行函数 lLoopRun.js_javascript技巧
<script> <br><!-- <br>function chgPos(sId,n){ <br> var o = document.getElementById(sId); <br> o.style.top = (parseInt(o.style.top)+n)+"px"; <br>} <br><br>function chgPosStop(sId,nMax){ <br> var o = document.getElementById(sId); <br> if(parseInt(o.style.top)<0){isReBack = false;} <br> if(parseInt(o.style.top)>nMax){isReBack = true;} <br> if(isReBack) { <br> nNum=-Math.abs(nNum); <br> } else { <br> nNum=Math.abs(nNum); <br> } <br> //return parseInt(o.style.top)>nMax || (parseInt(o.style.top)>nMax-200); <br>} <br><br>var nNum=10; <br>var isReBack = false; <br>lLoopRun("chgPos(&#146;IECN&#146;,nNum);","chgPosStop(&#146;IECN&#146;,300)",20); <br>--> <br></script>
 
 


渐变显示(图片): 
 
 
lLoopRun.js 应用实例: 渐变显示效果 
 
 
 
<script></script>
 
 

执行次数:0


javascript延时重复执行函数 lLoopRun.js_javascript技巧

刷新再次查看演示效果
<script> <br><!-- <br>function chgOpacity(sId,n){ <br> var o = document.getElementById(sId); <br> if (o.filters) { <br> o.filters[0].Opacity = parseInt(o.filters[0].Opacity) + n; <br> } else { <br> o.style.opacity= eval(document.defaultView.getComputedStyle(o,null).getPropertyValue(&#146;opacity&#146;)) + (n*100/10000); <br> } <br>} <br><br>function chgOpacityStop(sId){ <br> var o = document.getElementById(sId); <br> if (o.filters) { <br> return parseInt(o.filters[0].Opacity)>=99; <br> } else { <br> return eval(o.style.opacity)>=0.99; <br> } <br>} <br><br>lLoopRun("chgOpacity(&#146;IECN&#146;,1);","chgOpacityStop(&#146;IECN&#146;)",20); <br>--> <br></script>
 
 


原文:http://fengyan.iecn.cn/blog-html-do-showone-uid-35653-type-blog-itemid-2320.html 
java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号