Javascript 在加载元素后设置onload属性是否仍会运行处理程序?
如果在元素已加载后设置其onload属性,会发生什么情况?处理程序是立即执行的还是被忽略的?您能给出一个示例吗?我认为这段代码可能会帮助您:Javascript 在加载元素后设置onload属性是否仍会运行处理程序?,javascript,html,dom,Javascript,Html,Dom,如果在元素已加载后设置其onload属性,会发生什么情况?处理程序是立即执行的还是被忽略的?您能给出一个示例吗?我认为这段代码可能会帮助您: function loadScript(url, callback){ var script = document.createElement("script") script.type = "text/javascript"; if (script.readyState){ //IE
function loadScript(url, callback){
var script = document.createElement("script")
script.type = "text/javascript";
if (script.readyState){ //IE
script.onreadystatechange = function(){
if (script.readyState == "loaded" ||
script.readyState == "complete"){
script.onreadystatechange = null;
callback();
}
};
} else { //Others
script.onload = function(){
callback();
};
}
script.src = url;
document.getElementsByTagName("head")[0].appendChild(script);
}
<script type="text/javascript" src="http://your.cdn.com/first.js"></script>
<script type="text/javascript">
loadScript("http://your.cdn.com/second.js", function(){
//initialization code
});
</script>
函数加载脚本(url,回调){
var script=document.createElement(“脚本”)
script.type=“text/javascript”;
if(script.readyState){//IE
script.onreadystatechange=函数(){
如果(script.readyState==“已加载”||
script.readyState==“完成”){
script.onreadystatechange=null;
回调();
}
};
}其他{//其他
script.onload=函数(){
回调();
};
}
script.src=url;
document.getElementsByTagName(“head”)[0].appendChild(脚本);
}
加载脚本(“http://your.cdn.com/second.js“,函数(){
//初始化代码
});
什么都没有。它被忽略了。事件发生时会发生,不受时间限制的事件处理程序不会启动。我正在加载一个图像,但我假设同样的概念也适用。不知道readyState.script.onload=function(){callback();};可以使用callbakc()函数加载头脚本文档。getElementsByTagName(“头”)[0]。appendChild(脚本);用于加载头脚本。。。