作家
登录

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

作者: 来源:www.28hudong.com 2013-03-30 00:20:09 阅读 我要评论

今天检查自己用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函数失效无效不运行执行的解决办法

  推荐阅读

  利用JQuery和JS实现奇偶行背景颜色自定义效果

JQuery实现: 复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-eq>>>详细阅读


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

地址:http://www.17bianji.com/kaifa2/JS/22925.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)