$('body').append('<script src="xxx.js"></script><script src="yyy.js"></script>');
这样子载入一个js,有没有办法在载入完成时执行一个回调函数。
$('body').append('<script src="xxx.js"></script><script src="yyy.js"></script>');
这样子载入一个js,有没有办法在载入完成时执行一个回调函数。
为什么不$.getScript
呢
$.getScript("/do.js",function(){
console.log("加载完毕");
})
加点料...jQuery.getScript(url,success(response,status))
载入的脚本在全局环境中执行,因此能够引用其他变量,并使用 jQuery 函数。
该函数是简写的 Ajax 函数,等价于:
$.ajax({
url: url,
dataType: "script",
success: success
});
function loadScript(url, callback) {
var script = document.createElement("script");
script.type = "text/javascript";
// IE
if (script.readyState) {
script.onreadystatechange = function () {
if (script.readyState == "loaded" || script.readyState == "complete") {
script.onreadystatechange = null;
callback();
}
};
} else { // others
script.onload = function () {
callback();
};
}
script.src = url;
document.body.appendChild(script);
}
使用:
loadScript("http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.2.min.js", function () {
alert('loaded');
});
JSFiddle例子:
http://jsfiddle.net/starandtina/L3QaM/
16 回答2.8k 阅读✓ 已解决
6 回答4.1k 阅读✓ 已解决
9 回答3.4k 阅读✓ 已解决
14 回答5.3k 阅读
7 回答1.8k 阅读
14 回答2k 阅读
3 回答989 阅读✓ 已解决
试了这样
不行。。。
这样子可以。。。
不知道 有没有更好的方法