web.js.自动播放选项卡,与解决物体速度在多次点击时间后会加速
来源:互联网 发布:西装软件 编辑:程序博客网 时间:2024/05/18 12:35
首先先看代码
<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title></title> <style type="text/css"> #div2{ width: 200px; height: 200px; background: gray; } .cla{ background: orange; } </style> <script type="text/javascript"> var arr=["yinshuo","尹","烁","大尹烁"];//定义一个循环的数组 var timer=null; //定时器 var i=0; //主要用在鼠标移入已出 function tick(){//tick函数+定时器 实现轮播效果 var odiv1=document.getElementById('div1'); var odiv2=document.getElementById('div2'); var ipts=odiv1.getElementsByTagName('input'); for(var j=0;j<ipts.length;j++){ //首先清除其他效果 ipts[j].className=''; } ipts[i].className='cla'; odiv2.innerHTML=arr[i]; i++; if(i==ipts.length){ i=0; } } window.onload=function(){ var odiv1=document.getElementById('div1'); var odiv2=document.getElementById('div2'); var ipts=odiv1.getElementsByTagName('input'); for (var i=0;i<ipts.length;i++){//实现鼠标移入移出 ipts[i].cnt=i;//看看cnt在后面哪里出现,cnt是自己定义的一个计数 ipts[i].onmouseover=function(){ clearInterval(timer); for(var j=0;j<ipts.length;j++){ ipts[j].className=''; } this.className='cla'; odiv2.innerHTML=arr[this.cnt] } ipts[i].onmouseout=function(){ timer=setInterval(tick,2000); } } clearInterval(timer);//在调用定时器前先把其关掉,保证每次只用一个定时器开着,不然实现会出问题,我会在后面给出一个代码,具体解释此效果 timer=setInterval(tick,2000); tick(); //一定要加上,不然重新刷新时会有延迟 } </script> </head> <body> <div id="div1"> <input type="button" name="btn1" id="btn1" value="按钮" class="cla"/> <input type="button" name="btn1" id="btn2" value="按钮" /> <input type="button" name="btn1" id="btn3" value="按钮" /> <input type="button" name="btn1" id="btn4" value="按钮" /> </div> <div id="div2"> </div> </body></html>
追加个代码,解释在执行一个定时器之前加上clearInterval(timer);(timer是对定时器起的名字)
<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title></title> <style type="text/css"> #adiv{ height: 100px; width: 100px; background: red; position: absolute; } </style> <script type="text/javascript"> window.onload=function (){ var ospd=document.getElementById('spd'); var odiv=document.getElementById('adiv'); var oid=document.getElementById('aid'); var start_1=document.getElementById('start'); var clr; var speed=0; function Move(){ speed=parseInt(ospd.value); if(odiv.offsetLeft>=500){ clearInterval(clr); } else{ odiv.style.left=odiv.offsetLeft+speed+'px'; } } start_1.onclick=function (){ clearInterval(clr);//试着把这段注释取消,然后多次点击按钮,发现物体会加速; clr=setInterval(Move,30); } oid.onclick=function(){ clearInterval(clr); } } </script> </head> <body> 速度:<input type="text" name="spd" id="spd" value="" /> <input type="button" name="aid" id="aid" value="停止" /> <input type="button" name="" id="start" value="开始" /> <div id="adiv"> </div> </body></html>
谢谢 支持
0 0
- web.js.自动播放选项卡,与解决物体速度在多次点击时间后会加速
- 关于setTimeout多次点击会多次执行方法导致运行速度加快的问题
- 多次执行Hibernate query.list()后,发现会卡在这一句的问题。
- 解决Hbase启动后,hmaster会在几秒钟后自动关闭(停掉)!!!
- css/js解决 页面多次点击时出现部分蓝色
- 使用vlc解决在web上点击播放ts格式视频
- js-hotkeys 绑定多个热键后多次执行解决
- DialogFragment点击多次,弹出多次的解决
- 解决多次点击按钮 执行多次方法
- 百度空间自动播放选项卡
- js-按钮点击后变为不可点击状态,防止多次提交
- 点击按钮后 屏幕会自动滚至顶部
- 【JS】可多次使用的jQuery tab选项卡
- html5——点击按钮后视频自动播放
- 解决button多次重复点击
- 在0.2秒时间间隔内多次点击只响应一次点击事件
- 解决【点击文本框会自动列出曾经的记录】问题
- bootstrap中按钮点击会自动刷新解决
- 网络编程1之计算机网络及参考模型、域名、服务器
- D
- 对js面向对象的浅析一。
- hdu 1896 Stones
- Scanner实现对文件的操作
- web.js.自动播放选项卡,与解决物体速度在多次点击时间后会加速
- git 上传代码到github
- 《谷歌和亚马逊如何做产品》读书笔记之十大交付原则
- iOS 极光推送SDK的集成
- 08 WebGL通过点击绘制点
- OpenGL Superbible 7 01 Introduction
- 1054: 【排队买票】
- myeclipse常用快捷键
- Centos配置防火墙 开启80端口、3306端口的方法