使用JS附加body onload事件

如何通过跨浏览器方式将主体onload事件与JS关联?这样简单吗?

  document.body.onload = function(){

alert("LOADED!");

}

回答:

// Dean Edwards/Matthias Miller/John Resig

function init() {

// quit if this function has already been called

if (arguments.callee.done) return;

// flag this function so we don't do the same thing twice

arguments.callee.done = true;

// kill the timer

if (_timer) clearInterval(_timer);

// do stuff

};

/* for Mozilla/Opera9 */

if (document.addEventListener) {

document.addEventListener("DOMContentLoaded", init, false);

}

/* for Internet Explorer */

/*@cc_on @*/

/*@if (@_win32)

document.write("<script id=__ie_onload defer src=javascript:void(0)><\/script>");

var script = document.getElementById("__ie_onload");

script.onreadystatechange = function() {

if (this.readyState == "complete") {

init(); // call the onload handler

}

};

/*@end @*/

/* for Safari */

if (/WebKit/i.test(navigator.userAgent)) { // sniff

var _timer = setInterval(function() {

if (/loaded|complete/.test(document.readyState)) {

init(); // call the onload handler

}

}, 10);

}

/* for other browsers */

window.onload = init;

以上是 使用JS附加body onload事件 的全部内容, 来源链接: utcz.com/qa/401483.html

回到顶部