开发日记(2015.9.21):Js中clearInterval、window.onload失效 及 Js添加animation的浏览器兼容
2015-09-21 14:04
1081 查看
一、在使用定时器的情况下,偶尔会出现clearInterval清除不了定时器的情况
这个时候,可以通过外加一个布尔值来进行判别操作:
1)失效情况:
2)解决办法:
二、js给DOM对象设置animation属性时,需要注意兼容浏览器:
1)一般写法:
2)兼容写法:
三、在页面加载时调用 某个js函数,通过window.onload来实现时,失效
在ios 或 安卓 微信的自带浏览器中,window.onload完全失效,解决办法是:
不用window.onload,而是采用jQuery的ready()方法,具体如下:
1)通常写法:
2)兼容微信写法:
这个时候,可以通过外加一个布尔值来进行判别操作:
1)失效情况:
var timer; function doThis(){ //需要循环执行的 方法主体 } function func(){ timer = window.setInterval(doThis,200);//每隔0.2秒执行一次 } window.clearInterval(timer);//这里可能无法清除定时器
2)解决办法:
var timer; var doOver = true; function doThis(){ //这里是需要循环执行的 方法主体 //注意:执行完后,将doOver值变为false,供给调用计时器的函数判断 doOver = false; } function func(){ if(doOver){ timer = window.setInterval(doThis,200);//每隔200毫秒执行一次doThis() }else{ window.clearInterval(timer);//清除计时器 } }
二、js给DOM对象设置animation属性时,需要注意兼容浏览器:
1)一般写法:
Obj.style.animation="动画名 0.3s linear";
2)兼容写法:
Obj.style.animation="动画名 0.3s linear";
Obj.style.webkitAnimation="动画名 0.3s linear";//这里就对chrome和Safari兼容
三、在页面加载时调用 某个js函数,通过window.onload来实现时,失效
在ios 或 安卓 微信的自带浏览器中,window.onload完全失效,解决办法是:
不用window.onload,而是采用jQuery的ready()方法,具体如下:
1)通常写法:
<script> window.onload=function(){ //这里是需要调用的函数 } </script>
2)兼容微信写法:
<script> $(document).ready(function(){ //这里是要调用的函数 }) </script>
相关文章推荐
- NSJSONSerialization类的使用
- JSP Servlet学习笔记——使用fileupload上传文件
- 转化为json字符串
- 关于js中select的简单操作,以及js前台计算,span简单操作
- JS学习总结之Core DOM
- JavaScript之array
- js之DOM操作(插入节点insertBefore())
- jsp中的<%=表达式%>和<%表达式%>有什么区别?
- 弱问JSP中的<%= %>和${ }到底有什么区别?
- JavaScript验证Email(3种方法)
- js常用插件
- 基于jsp+servlet实现的简单博客系统实例(附源码)
- Javascript模块化编程(三):require.js的用法
- go json
- JSON解析字符串
- Javascript模块化编程(二):AMD规范
- Ajax-Js实现
- 解决JS浮点数(小数)计算加减乘除的BUG
- JS 处理浮点型问题
- js之DOM操作(访问子节点和最后一个节点)