解决火狐浏览器下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 相关文章推荐
JavaScript 撑出页面文字换行
Jun 15 Javascript
Jquery Ajax请求代码(2)
Jan 07 Javascript
js不完美解决click和dblclick事件冲突问题
Jul 16 Javascript
在js文件中如何获取basePath处理js路径问题
Jul 10 Javascript
jQuery jcrop插件截图使用方法
Nov 20 Javascript
二叉树先序遍历的非递归算法具体实现
Jan 09 Javascript
js阻止事件追加的具体实现
Oct 15 Javascript
JavaScript声明变量名的语法规则
Jul 10 Javascript
jQuery实现的超酷苹果风格图标滑出菜单效果代码
Sep 16 Javascript
Ubuntu系统下Angularjs开发环境安装
Sep 01 Javascript
详解React中setState回调函数
Jun 14 Javascript
自定义Vue组件打包、发布到npm及使用教程
May 22 Javascript
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
PHP统计nginx访问日志中的搜索引擎抓取404链接页面路径
2014/06/30 PHP
php解析json数据实例
2014/08/19 PHP
PHP中Session可能会引起并发问题
2015/06/26 PHP
浅析PHP中的闭包和匿名函数
2017/12/25 PHP
JS获取IUSR_机器名和IWAM_机器名帐号的密码
2006/12/06 Javascript
jquery $.each()使用探讨
2013/09/23 Javascript
js 点击页面其他地方关闭弹出层(示例代码)
2013/12/24 Javascript
JavaScript实现的一个日期格式化函数分享
2014/12/06 Javascript
js+html5实现canvas绘制镂空字体文本的方法
2015/06/05 Javascript
jquery实现的Banner广告收缩效果代码
2015/09/02 Javascript
js实现控制textarea输入字符串的个数,鼠标按下抬起判断输入字符数
2016/10/25 Javascript
js实现华丽的九九乘法表效果
2017/03/29 Javascript
分析javascript中9 个常见错误阻碍你进步
2017/09/18 Javascript
Vue项目数据动态过滤实践及实现思路
2018/09/11 Javascript
Bootstarp在pycharm中的安装及简单的使用方法
2019/04/19 Javascript
一文秒懂JavaScript构造函数、实例、原型对象以及原型链
2020/08/25 Javascript
详解ES6中class的实现原理
2020/10/03 Javascript
详细讲解Python中的文件I/O操作
2015/05/24 Python
PYTHON压平嵌套列表的简单实现
2016/06/08 Python
Bottle框架中的装饰器类和描述符应用详解
2017/10/28 Python
对Python多线程读写文件加锁的实例详解
2019/01/14 Python
Python制作简易版小工具之计算天数的实现思路
2020/02/13 Python
pytorch 多分类问题,计算百分比操作
2020/07/09 Python
详解CSS3中的box-sizing(content-box与border-box)
2019/04/19 HTML / CSS
HTML5里的placeholder属性使用实例和美化显示效果的方法
2014/04/23 HTML / CSS
HTML5 文件域+FileReader 分段读取文件并上传到服务器
2017/10/23 HTML / CSS
TripAdvisor印尼站:全球领先的旅游网站
2018/03/15 全球购物
飞利浦美国官网:Philips美国
2020/02/28 全球购物
应届生文秘专业个人自荐信格式
2013/09/21 职场文书
三年级音乐教学反思
2014/01/28 职场文书
法语专业求职信
2014/07/20 职场文书
三八活动策划方案
2014/08/17 职场文书
防火标语大全
2014/10/06 职场文书
2015年税务稽查工作总结
2015/05/26 职场文书
公司会议开幕词
2016/03/03 职场文书
Nginx性能优化之Gzip压缩设置详解(最大程度提高页面打开速度)
2022/02/12 Servers