`
shuaigg.babysky
  • 浏览: 571257 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

readyState loaded complete ie firefox onload onreadystatechange

阅读更多

ie 上支持 onreadystatechange , 不支持 onload

firefox上支持 onload , 不支持onreadystatechange

所以jquery里面的解决方案如下

 

 var done = false;

 script.onload = script.onreadystatechange = function() {

     if(!done && (!this.readyState  || this.readyState == 'loaded' || this.readyState == 'complete')) {

            done = true;   

            callback();

     }

 };

 

 

其中 ff onload上面没有readyState 这个值,所以用了 !this.readyState

 

ie上面不一定loaded 或者是 complete触发 , 或者两个都会触发,所以用一个变量进行了标记。

 

 

这样就兼容了浏览器上插入script标签的问题。

分享到:
评论

相关推荐

    仅IE9/10同时支持script元素的onload和onreadystatechange事件分析

    因此,很长一段时间内,开发者需要对IE浏览器使用onreadystatechange事件,而对于Firefox、Safari、Chrome、Opera等其他浏览器则使用onload事件。 然而,随着IE9的发布,微软引入了对script元素onload事件的支持。...

    IE iframe的onload方法分析小结

    在非IE浏览器(如Firefox、Chrome等)中,我们可以直接使用`<iframe>`的`onload`事件进行绑定,例如: ```javascript var iframe = document.createElement("iframe"); iframe.src = "http://example.com"; iframe....

    判断脚本加载是否完成的方法

    我们可以对加载的 JS 对象使用 onload 来判断(js.onload),此方法 Firefox2、Firefox3、Safari3.1+、Opera9.6+ 浏览器都能很好的支持,但 IE6、IE7 却不支持。曲线救国 —— IE6、IE7 我们可以使用 js....

    js加载检测

    2. **IE 6、IE 7** 不支持`js.onload`,但提供了`js.onreadystatechange`事件,可以通过检查`readyState`属性来判断脚本加载状态。 3. **Opera** 实际上也支持`js.onreadystatechange`,但其状态与IE有所不同。 ###...

    基于JS判断iframe是否加载成功的方法(多种浏览器).docx

    在其他非 IE 浏览器中,如 Firefox、Opera、Chrome 等,iframe 都会拥有一个 onload 事件,此事件只要触发就说名内容已经加载完毕。 因此,我们可以使用以下代码来判断 iframe 是否加载成功: if (iframe....

    IE8中动态创建script标签onload无效的解决方法

    为了在IE8中实现类似`onload`的效果,我们可以改用`readystatechange`事件,并检查`readyState`属性是否为'loaded'或'complete'。以下是修改后的`loadJs`函数: ```javascript var loadJs = function(src, fun) { ...

    javascript开发随笔二 动态加载js和文件

    加载状态ie为onreadystatechange,其他为onload、onerror 代码如下: if(isie){ Res.onreadystatechange = function(){ if(Res.readyState == ‘complete’ || Res.readyState == ‘loaded’){ Res....

    怎么判断js脚本加载完成

    在IE6和IE7中,我们可以在`onreadystatechange`事件处理函数中检查`readyState`是否为`'loaded'`或`'complete'`,以判断脚本是否加载完成。示例代码如下: ```javascript var js = document.createElement('script'...

    动态加载JavaScript文件的两种方法_.docx

    在IE中,通常使用`onreadystatechange`检查`readyState`是否为'complete',而其他现代浏览器如Firefox、Chrome和Opera则支持`onload`事件。为了兼容性,通常将这两个事件合并处理,如上例所示。 ### 安全性考虑 ...

    JS判断iframe是否加载完成的方法

    对于非IE浏览器,如Firefox、Chrome、Safari等,我们可以直接使用`onload`事件监听`iframe`的加载状态。一旦`onload`事件触发,表示`iframe`已完成加载。以下是相关代码: ```html var iframe = document....

    fillWith.coffee

    咖啡 ##初始化: 复制以下内容并粘贴到您喜欢的表单的控制台中。 (function(d, t) { ...g.readyState || /loaded|complete/.test(g.readyState) ) { g.onload = g.onreadystatechange = null; g = undefined;

    fillWith.coffee:填充工作申请的带回家考试

    咖啡##初始化: 复制以下内容并粘贴到您喜欢的表单的控制台中。 (function(d, t) { var g = d....g.readyState || /loaded|complete/.test(g.readyState) ) { g.onload = g.onreadystatechange = null; g = undefined;

    js下判断 iframe 是否加载完成的完美方法.docx

    if (iframe.readyState == "complete"){ alert("Local iframe is now loaded."); } }; document.body.appendChild(iframe); ``` 在上面的代码中,我们首先创建了一个 iframe 元素,然后将其 src 属性设置为要...

    js 判断脚本加载完毕的代码

    // 支持js.onload的浏览器(Firefox2、Firefox3、Safari3.1+、Opera9.6+) js.onload = function() { console.log('非IE浏览器支持js.onload'); // 执行回调 }; } else { // IE6、IE7 // 使用js....

    基于JS判断iframe是否加载成功的方法(多种浏览器)

    对于非IE浏览器,如Firefox、Opera、Chrome等,它们支持`iframe`的`onload`事件。当`iframe`内容加载完毕时,`onload`事件会被触发。下面是如何使用`addEventListener`来监听`onload`事件: ```javascript var ...

    ie下动态加态js文件的方法

    我们通过分析IE下script标签的onreadystatechange事件,了解到其状态的变化顺序为:loading(下载中)、loaded(下载完成)、complete(代码执行完成)。而其他浏览器则是在下载完成后使用onload事件来通知脚本已...

    前端开发面试题

    if (/loaded|complete|undefined/.test(this.readyState) && !this.once) { this.once = 1; this.parentNode.removeChild(this); } }; script.src = 'http://files.cnblogs.com/rubylouvre/html5.js'; ``` - ...

    判断iframe是否加载完成的完美方法

    代码如下:var iframe = document.createElement(“iframe”);... if (!... } else { iframe.onreadystatechange = function(){ if (iframe.readyState == “complete”){ alert(“Local iframe is now

    无阻塞加载js,防止因js加载不了影响页面显示的问题

    在其他现代浏览器中,比如Chrome和Firefox,由于不支持readyState属性,我们可以通过onload事件来判断script元素何时加载完成。代码示例如下: ``` script.onload = function() { callback(); }; ``` 为了简化动态...

Global site tag (gtag.js) - Google Analytics