如何让js在xhtml文档加载完毕之后再执行? 本帖最后由 fisherboy 于 2012-07-21 23:47:06 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不明白你的意思因为我这个页面window.onload的时候要执行很多函数。这样会覆盖前面的window.onload=函数window.onload是在文档加载完毕执行函数 即便不用这个 你还是在文档加载完毕执行 不一样吗?完全不懂你的意思 你在body那里加一句话<body onload="你的函数名">这样试试呢 <html><body><script>window.onload = function(){ alert('onload');}var load2 = function(){ alert('load2');};var load3 = function(){ alert('load3');};var EventUtil = { //注册 addHandler: function(element, type, handler){ if (element.addEventListener){ element.addEventListener(type, handler, false); } else if (element.attachEvent){ element.attachEvent("on" + type, handler); } else { element["on" + type] = handler; } }, //移除注册 removeHandler: function(element, type, handler){ if (element.removeEventListener){ element.removeEventListener(type, handler, false); } else if (element.detachEvent){ element.detachEvent("on" + type, handler); } else { element["on" + type] = null; } } }; EventUtil.addHandler(window, 'load', load2); EventUtil.addHandler(window, 'load', load3); </script></body></html>希望这个用例可以解决你的问题。少年,想学好你的基础吧。推荐《javascirpt高级程序设计》 <html><body><script>window.onload = function(){ alert('onload');}var load2 = function(){ alert('load2');};var load3 = function(){ alert('load3');};var EventUtil = { //注册 addHandler: function(element, type, handler){ if (element.addEventListener){ element.addEventListener(type, handler, false); } else if (element.attachEvent){ element.attachEvent("on" + type, handler); } else { element["on" + type] = handler; } }, //移除注册 removeHandler: function(element, type, handler){ if (element.removeEventListener){ element.removeEventListener(type, handler, false); } else if (element.detachEvent){ element.detachEvent("on" + type, handler); } else { element["on" + type] = null; } } }; EventUtil.addHandler(window, 'load', load2); EventUtil.addHandler(window, 'load', load3); </script></body></html>希望这可以解决你的问题。少年,想打好你的基础吧。推荐《javascript高级程序设计》 window.onload是最好的方法window.onload防止覆盖的方法function f1(){alert("执行f1")}function f2(){alert("执行f2")}function f3(){alert("执行f3")}function addLoadEvent(func) { var oldonload = window.onload; if (typeof window.onload != 'function') { window.onload = func; } else { window.onload = function() { if (oldonload) { oldonload(); } func(); } }}addLoadEvent(f1);addLoadEvent(f3);addLoadEvent(f2); 不是onload,onload其实很很后面执行了。楼主的情况,要用 DOMContentLoadeddocument.addEventListener("DOMContentLoaded", function(){alert('loaded');}, false);对于不支持DOMContentLoaded的老式IE浏览器,用特别的hack手法,参考此文中的 "Crude test for IE"http://www.javascriptkit.com/dhtmltutors/domready.shtml Myeclipse 9.0只要关于js 的都报错 js+oracle 日期类型插入数据库时 请问有没有什么方法可以修改提示框的样式? 求助地址带#号的图片库是怎么实现的 怎样判断是汉字? 在线等球这样的javascript代码,第三级是图片 有没有什么办法能让一个IE窗口总在最前面,而不被其它窗口覆盖? 关于保存excel文件的问题 如何动态减少input框?(挂~等) SOS...问个问题...大家帮帮忙吧~!谢谢 为什么greasemonkey脚本无效? jquery如何控制表格显示哪些行啊?
因为我这个页面window.onload的时候要执行很多函数。这样会覆盖前面的window.onload=函数
window.onload是在文档加载完毕执行函数 即便不用这个 你还是在文档加载完毕执行 不一样吗?
完全不懂你的意思
<body><script>
window.onload = function(){
alert('onload');
}var load2 = function(){
alert('load2');
};var load3 = function(){
alert('load3');
};var EventUtil = {
//注册
addHandler: function(element, type, handler){
if (element.addEventListener){
element.addEventListener(type, handler, false);
} else if (element.attachEvent){
element.attachEvent("on" + type, handler);
} else {
element["on" + type] = handler;
}
},
//移除注册
removeHandler: function(element, type, handler){
if (element.removeEventListener){
element.removeEventListener(type, handler, false);
} else if (element.detachEvent){
element.detachEvent("on" + type, handler);
} else {
element["on" + type] = null;
}
}
};
EventUtil.addHandler(window, 'load', load2);
EventUtil.addHandler(window, 'load', load3);
</script>
</body>
</html>希望这个用例可以解决你的问题。
少年,想学好你的基础吧。推荐《javascirpt高级程序设计》
<html>
<body><script>
window.onload = function(){
alert('onload');
}var load2 = function(){
alert('load2');
};var load3 = function(){
alert('load3');
};var EventUtil = {
//注册
addHandler: function(element, type, handler){
if (element.addEventListener){
element.addEventListener(type, handler, false);
} else if (element.attachEvent){
element.attachEvent("on" + type, handler);
} else {
element["on" + type] = handler;
}
},
//移除注册
removeHandler: function(element, type, handler){
if (element.removeEventListener){
element.removeEventListener(type, handler, false);
} else if (element.detachEvent){
element.detachEvent("on" + type, handler);
} else {
element["on" + type] = null;
}
}
};
EventUtil.addHandler(window, 'load', load2);
EventUtil.addHandler(window, 'load', load3);
</script>
</body>
</html>
希望这可以解决你的问题。
少年,想打好你的基础吧。推荐《javascript高级程序设计》
window.onload防止覆盖的方法
function f1()
{
alert("执行f1")
}function f2()
{
alert("执行f2")
}
function f3()
{
alert("执行f3")
}function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function() {
if (oldonload) {
oldonload();
}
func();
}
}
}
addLoadEvent(f1);
addLoadEvent(f3);
addLoadEvent(f2);
对于不支持DOMContentLoaded的老式IE浏览器,
用特别的hack手法,参考此文中的 "Crude test for IE"
http://www.javascriptkit.com/dhtmltutors/domready.shtml