script.onload=script.onreadystatechange=function()的作用:
在判断引入js文件是否加载完毕的代码中都有此语句的存在,下面就介绍一下它的作用什么。
关于如何判断引入js文件是否加载完毕可以参阅js如何判断引入的js文件是否加载完毕一章节。
完整代码如下:
script.onload=script.onreadystatechange=function(){ if(!this.readyState||this.readyState==‘loaded‘||this.readyState==‘complete‘){ //code } script.onload=script.onreadystatechange=null; }
下面介绍一下上面代码的相关原理:
1.IE8和IE8以下浏览器中,script标签并不支持onload事件,但是支持onreadystatechange事件。
2.IE8以上浏览器、谷歌浏览器和火狐浏览器支持onload事件。
3.readyState是onreadystatechange事件的一个状态,当值为loaded或者complete的时候,都表示已经加载完毕。
4.if(!this.readyState||this.readyState==‘loaded‘||this.readyState==‘complete‘),!this.readyState表示不是不是IE11以下浏览器(IE11以下浏览器也是支持onreadystatechange事件的)
原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=14776
时间: 2024-10-24 14:53:39