js onreadystatechange 和 onload的区别
IE的script 元素只支持onreadystatechange事件,不支持onload事件。
FF的script 元素不支持onreadystatechange事件,只支持onload事件。
如果要在一个<script src="xx.js"> 加载完成执行一个操作,FF使用onload事件就行了,IE下则要结合onreadystatechange事件和this.readyState
readyState的值为'loaded'或者'complete'都可以表示这个script已经加载完成.
var script = document.createElement('script');
script.src = "xx.js";
if (script.readyState) {
//IE浏览器
script.onreadystatechange = function() {
if (script.readyState == 'loaded' || script.readyState == 'complete') {
console.log();
}
};
} else {
//其他浏览器
script.onload = function() {
console.log();
};
}