解决火狐浏览器下JS setTimeout函数不兼容失效不执行的方法


Posted in Javascript onNovember 14, 2012

今天检查自己用JQuery+AJAX+PHP做的网站后台登录检测,发现登陆成功后执行页面跳转函数这段JavaScript(JS)代码特效在IE和谷歌浏览器Chrome下都可以很好地执行,兼容性还不错。结果到了火狐(FireFox)浏览器下setTimeout这个JS内置函数不执行了,无效了,也没报错!打开FireBUG指望它能检测出JS的错误,结果没用...Javascript(JS)脚本代码在各浏览器下的兼容是一个很头疼的问题,经过一番调试和搜索,终于解决了setTimeout这个JS代码在火狐下失效不兼容不能运行和执行的错误。目前这个setTimeout可以很好地兼容IE6,7,8,9以及谷歌浏览器Chrome,火狐浏览器FireFox,苹果浏览器Safari,Opera。

setTimeout是一个很不错的函数,网站页面前端工程师经常将其用于几秒后执行的动作。setTimeout这个JS内置函数其用法也很简单,下面是setTimeout()的函数说明以及用法详解和实例、示例代码:

setTimeout()的作用是指定在多少毫秒后执行一个JS函数或者表达式代码
setTimeout的用法、语法、参数:setTimeout(code,millisec)
setTimeout参数说明:
code是必需参数。要调用的函数后要执行的 JavaScript 代码串。
millisec是必需参数。在执行代码前需等待的毫秒数。毫秒和秒之间的换算是:1000毫秒=1秒
setTimeout实例代码(1秒后页面跳转到指定的URL):

<script language="javascript"> 
function go(){//定义函数 
window.location="main.html";//页面跳转 
} 
window.setTimeout("go()",1000);//1秒后执行函数go 
</script>

但是以上JS代码是无法兼容火狐的,这主要是因为IE和火狐的浏览器引擎是不同的。让这段页面跳转JS代码兼容IE、火狐、SAFARI、OPERA:
<script language="javascript"> 
function go(){//定义函数 
window.location="main.html";//页面跳转 
} 
window.setTimeout(function(){go()},1000);//1秒后执行函数go 
</script>

经过看.看.呗[kankanbei.com]站长的测试,它完美地兼容了各主流浏览器,特此写出来和大家分享。值得注意的是实现页面跳转的JS代码我们习惯写作location.href=页面地址,而这段代码在火狐下也是不能运行的,你需要写作window.location=页面地址。

火狐浏览器下JS代码不兼容setTimeout函数失效无效不运行执行的解决办法

Javascript 相关文章推荐
tagName的使用,留一笔
Jun 26 Javascript
关于Mozilla浏览器不支持innerText的解决办法
Jan 01 Javascript
javascript上传图片前预览图片兼容大多数浏览器
Oct 25 Javascript
javascript特殊用法示例介绍
Nov 29 Javascript
jquery中event对象属性与方法小结
Dec 18 Javascript
chrome下jq width()方法取值为0的解决方法
May 26 Javascript
EasyUI加载完Html内容样式渲染完成后显示
Jul 25 Javascript
百度小程序自定义通用toast组件
Jul 17 Javascript
layui2.0使用table+laypage实现真分页
Jul 27 Javascript
vue父子组件通信的高级用法示例
Aug 29 Javascript
解决vue初始化项目时,一直卡在Project description上的问题
Oct 31 Javascript
jQuery实现带进度条的轮播图
Sep 13 jQuery
ko knockoutjs动态属性绑定技巧应用
Nov 14 #Javascript
Jquery颜色选择器ColorPicker实现代码
Nov 14 #Javascript
jquery offset函数应用实例
Nov 14 #Javascript
如何让div span等元素能响应键盘事件操作指南
Nov 13 #Javascript
给artDialog 5.02 增加ajax get功能详细介绍
Nov 13 #Javascript
jquery1.83 之前所有与异步列队相关的模块详细介绍
Nov 13 #Javascript
Google的跟踪代码 动态加载js代码方法应用
Nov 12 #Javascript
You might like
php5.3不能连接mssql数据库的解决方法
2014/12/27 PHP
php开发中的页面跳转方法总结
2015/04/26 PHP
php学习笔记之字符串常见操作总结
2019/07/16 PHP
浅谈laravel 5.6 安装 windows上使用composer的安装过程
2019/10/18 PHP
laravel邮件发送的实现代码示例
2020/01/31 PHP
extjs 的权限问题 要求控制的对象是 菜单,按钮,URL
2010/03/09 Javascript
jQuery 类twitter的文本字数限制带提示效果插件
2010/04/16 Javascript
跨域请求之jQuery的ajax jsonp的使用解惑
2011/10/09 Javascript
JavaScript中的稀疏数组与密集数组[译]
2012/09/17 Javascript
js 限制数字 js限制输入实现代码
2012/12/04 Javascript
上传图片js判断图片尺寸和格式兼容IE
2014/09/01 Javascript
使用ngView配合AngularJS应用实现动画效果的方法
2015/06/19 Javascript
基于javascript html5实现3D翻书特效
2016/03/14 Javascript
AngularJS 过滤与排序详解及实例代码
2016/09/14 Javascript
vue.js通过自定义指令实现数据拉取更新的实现方法
2016/10/18 Javascript
easyui datagrid 表格中操作栏 按钮图标不显示的解决方法
2017/07/27 Javascript
带你了解session和cookie作用原理区别和用法
2017/08/14 Javascript
vue-router 源码之实现一个简单的 vue-router
2018/07/02 Javascript
mpvue跳转页面及注意事项
2018/08/03 Javascript
vue 实现锚点功能操作
2020/08/10 Javascript
python 调用win32pai 操作cmd的方法
2017/05/28 Python
Python2.7下安装Scrapy框架步骤教程
2017/12/22 Python
在python中用print()输出多个格式化参数的方法
2019/07/16 Python
python实现图片中文字分割效果
2019/07/22 Python
Pandas —— resample()重采样和asfreq()频度转换方式
2020/02/26 Python
Python 读取xml数据,cv2裁剪图片实例
2020/03/10 Python
详解python爬取弹幕与数据分析
2020/11/14 Python
python爬虫利用代理池更换IP的方法步骤
2021/02/21 Python
Oakley官网:运动太阳镜、雪镜和服装
2016/09/30 全球购物
求职信的七个关键技巧
2014/02/05 职场文书
高中生家长寄语大全
2014/04/03 职场文书
2016年情人节问候语
2015/11/11 职场文书
2016大学生就业指导课心得体会
2016/01/15 职场文书
Mysql 用户权限管理实现
2021/05/25 MySQL
海贼王十大潜力果实,路飞仅排第十,第一可毁世界(震震果实)
2022/03/18 日漫
微软Win11 全新照片应用面向 Dev预览版推出 新版本上手体验图集
2022/09/23 数码科技