解决火狐浏览器下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 相关文章推荐
超级退弹代码
Jul 07 Javascript
JavaScript格式化数字的函数代码
Nov 30 Javascript
jquery对象和javascript对象即DOM对象相互转换
Aug 07 Javascript
Enter回车切换输入焦点实现思路与代码兼容各大浏览器
Sep 01 Javascript
使用正则表达式的格式化与高亮显示json字符串
Dec 03 Javascript
JavaScript常用脚本汇总(一)
Mar 04 Javascript
JavaScript ES6中CLASS的使用详解
Nov 22 Javascript
Easyui笔记2:实现datagrid多行删除的示例代码
Jan 14 Javascript
js实现功能比较全面的全选和多选
Mar 02 Javascript
element-ui表格列金额显示两位小数的方法
Aug 24 Javascript
js实现简单模态框实例
Nov 16 Javascript
jQuery实现的图片点击放大缩小功能案例
Jan 02 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
解决了Ajax、MySQL 和 Zend Framework 的乱码问题
2009/03/03 PHP
php面向对象全攻略 (十四) php5接口技术
2009/09/30 PHP
php学习之运算符相关概念
2011/06/09 PHP
php addslashes 利用递归实现使用反斜线引用字符串
2013/08/05 PHP
PHP基于socket实现的简单客户端和服务端通讯功能示例
2017/07/10 PHP
小程序微信退款功能实现方法详解【基于thinkPHP】
2019/05/05 PHP
PHP检查文件是否存在,不存在自动创建及读取文件内容操作示例
2020/01/23 PHP
javascript 定义新对象方法
2010/02/20 Javascript
JavaScript/jQuery 表单美化插件小结
2012/02/14 Javascript
node.js中的fs.futimesSync方法使用说明
2014/12/17 Javascript
深入理解JavaScript系列(45):代码复用模式(避免篇)详解
2015/03/04 Javascript
Node.js中的process.nextTick使用实例
2015/06/25 Javascript
Dojo获取下拉框的文本和值实例代码
2016/05/27 Javascript
JS简单获取及显示当前时间的方法
2016/08/03 Javascript
Angular4 反向代理Details实践
2018/05/30 Javascript
jQuery-Citys省市区三级菜单联动插件使用详解
2019/07/26 jQuery
Python用list或dict字段模式读取文件的方法
2017/01/10 Python
python爬虫框架talonspider简单介绍
2017/06/09 Python
python简单图片操作:打开\显示\保存图像方法介绍
2017/11/23 Python
django认证系统实现自定义权限管理的方法
2018/07/16 Python
cProfile Python性能分析工具使用详解
2019/07/22 Python
PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法
2019/08/06 Python
python 两个数据库postgresql对比
2019/10/21 Python
python读取csv文件指定行的2种方法详解
2020/02/13 Python
python GUI库图形界面开发之PyQt5浏览器控件QWebEngineView详细使用方法
2020/02/26 Python
Python解析m3u8拼接下载mp4视频文件的示例代码
2021/03/03 Python
柏林通行证:Berlin Pass
2018/04/11 全球购物
美国摩托车头盔、零件、齿轮及配件商店:Cycle Gear
2019/06/12 全球购物
Camille Jewelry官网:现代女性时尚首饰
2019/07/07 全球购物
英国礼品和生活方式品牌:Treat Republic
2020/11/21 全球购物
工会主席岗位责任制
2014/02/11 职场文书
网吧最新创业计划书范文
2014/03/27 职场文书
2015年财务经理工作总结
2015/05/13 职场文书
优秀团员主要事迹范文
2015/11/05 职场文书
又涨知识了,自律到底多重要?
2019/06/27 职场文书
win10电脑关机快捷键是哪个 win10快速关机的几种方法
2022/08/14 数码科技