建站行业前景怎么样,微网站怎么做的,提交网址,网站转换小程序先看这两句代码#xff1a;window.addEventListener(load,loaded,false);document.addEventListener(DOMContentLoaded,loaded,false);总结#xff1a;load事件是在页面所有元素都加载完后触发;DOMContentLoaded#xff0c;它是指dom tree加载完就触发;防止了页面加载被堵塞… 先看这两句代码
window.addEventListener(load,loaded,false);
document.addEventListener(DOMContentLoaded,loaded,false);
总结
load事件是在页面所有元素都加载完后触发;
DOMContentLoaded它是指dom tree加载完就触发;防止了页面加载被堵塞。
DOMContentLoaded事件IE9 以及其他浏览器
onreadystatechange事件IE9以下浏览器
今天闲来无事研究研究jquery.ready()的内部实现看JQ的源码一头雾水由于自己很菜了于是翻了翻牛人的播客讲述详细收获颇多。先普及一下jquery.ready()和window.onloadwindow.onload事件是在页面所有的资源都加载完毕后触发的. 如果页面上有大图片等资源响应缓慢, 会导致window.onload事件迟迟无法触发.所以出现了DOM Ready事件. 此事件在DOM文档结构准备完毕后触发, 即在资源加载前触发. var $ ready window.ready function(fn){
if(document.addEventListener){//兼容非IE
document.addEventListener(DOMContentLoaded,function(){
//注销事件避免反复触发
document.removeEventListener(DOMContentLoaded,arguments.callee,false);
fn();//调用参数函数
},false);
}else if(document.attachEvent){//兼容IE
IEContentLoaded (window, fn);
}
function IEContentLoaded (w, fn) {
var d w.document, done false,
// only fire once
init function () {
if (!done) {
done true;
fn();
}
};
// polling for no errors
(function () {
try {
// throws errors until after ondocumentready
d.documentElement.doScroll(left);
} catch (e) {
setTimeout(arguments.callee, 50);
return;
}
// no errors, fire
init();
})();
// trying to always fire before onload
d.onreadystatechange function() {
if (d.readyState complete) {
d.onreadystatechange null;
init();
}
};
}
}
ready(function(){alert(1)})
更多专业前端知识请上
【猿2048】www.mk2048.com