javascript运动的小Tip。
2015-06-27 21:37
627 查看
定时器运用
setInterval(function,1000)每隔1000毫秒执行一次function
setTimeout(function,1000)隔1000毫秒执行function(执行一次function)
clearInterval() clearTimeout()关闭定时器
技巧:
先开启定时器,再关闭定时器。如果事先关闭定时器,点击就会再次新建定时器,多个定时器同时工作,物体运动会加速。
把运动和停止隔开。如果只使用if,不使用else。在判断大小时候就会再次执行一次运动。
setInterval(function ( ) {left=offsetLeft+speed;} ,30)
调节速度大小时候,应该调节speed大小。30变大的时候会让这个这个运动变“卡”。
div.style.left和div.style.offsetLeft区别
div.style.left 返回的是字符串,如28px,div.style.offsetLeft返回的是数值28,如果需要对取得的值进行计算,还用offsetLeft比较方便。
style.left是读写的,offsetLeft是只读的。
offsetLeft好像更有性格,哈哈。
setInterval(function,1000)每隔1000毫秒执行一次function
setTimeout(function,1000)隔1000毫秒执行function(执行一次function)
clearInterval() clearTimeout()关闭定时器
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>move</title> <style type="text/css"> #c{ width: 100px; height: 100px; background-color: red; position: absolute; } </style> <script type="text/javascript"> var timer=null; function move ( ) { var oDiv=document.getElementById("c"); clearInterval(timer); timer=setInterval(function ( ) { var speed=5; if(oDiv.offsetLeft>300){ clearInterval(timer); } else{ oDiv.style.left=oDiv.offsetLeft+speed+"px"; } },30) } </script> </head> <body> <input type="button" value="开始运动" onclick="move()"> <div id="c"></div> </body> </html>
技巧:
先开启定时器,再关闭定时器。如果事先关闭定时器,点击就会再次新建定时器,多个定时器同时工作,物体运动会加速。
把运动和停止隔开。如果只使用if,不使用else。在判断大小时候就会再次执行一次运动。
setInterval(function ( ) {left=offsetLeft+speed;} ,30)
调节速度大小时候,应该调节speed大小。30变大的时候会让这个这个运动变“卡”。
div.style.left和div.style.offsetLeft区别
div.style.left 返回的是字符串,如28px,div.style.offsetLeft返回的是数值28,如果需要对取得的值进行计算,还用offsetLeft比较方便。
style.left是读写的,offsetLeft是只读的。
offsetLeft好像更有性格,哈哈。
相关文章推荐
- js防刷新的倒计时
- JavaScript Date对象
- javascript代码实用方法实现
- JavaScript创建对象的几种方式
- JS中将控制台log输出显示到浏览器中
- [extjs] ExtJS 4.2 开发环境搭建
- js for循环绑定问题解决
- HTML5系列四(特征检测、Modernizr.js的相关介绍)
- javascript的函数上下文this四条规则
- Javascript之创建对象(工厂模式与构造函数模式)
- js判断是否全是相同的字符串
- JavaScript学习10:动态加载脚本和样式
- JavaScript权威指南_111_第15章_脚本化文档_15.1-DOM概览
- JavaScript权威指南_110_第15章_脚本化文档_15.0-概述
- 比较JS合并数组的各种方法及其优劣
- AngulatJS多个控制器内数据共享
- js 变量 函数名的提升
- 2015年JS摘抄
- js判断登录与否并确定跳转页面的方法
- 使用Gson将字符窜转化成Json格式