1. 構文:
loadScript(url[,callback])
または
loadScript(settings)
2. 設定でサポートされるパラメーター:
url: スクリプトパス
async: 非同期かどうか、デフォルトは false (HTML5)
charset: ファイルエンコーディング
cache: キャッシュするかどうか、デフォルトは true
success: 関数が実行されましたロードが成功したら、最初にコールバックを実行します。
3. 呼び出し例:
//loadScript(url[,callback])
loadScript(“http://code.jquery.com/jquery.js”);
loadScript(“http://code.jquery .com/ jquery.js",function(){
console.log(1)
});
//loadScript(settings)
loadScript({"url":"http:/ /code.jquery.com/jquery.js","async":false,"charset":"utf-8","cache":false});
loadScript({"url":"http:/ /code.jquery.com/jquery.js","async":false,"charset":"utf-8","success":function(){
console.log(2)
}} );
//または、Jiangzi:
//loadScript(settings[,callback])
loadScript({"url":"http://code.jquery.com/jquery.js") ,"async ”:false,”charset”:”utf-8″},function(){
console.log($)
});
4ソースコード:
関数loadScript (url,callback) {
var head = document.head || document.getElementsByTagName(“head”)[0] || document.documentElement,
script,
options,
if (typeof url == "object") {
options = url;
url = unknown;
}
s = オプション {};
url = url || s .url;
コールバック = コールバック || s.success;
script = document.createElement(“script”);
script.async = s.async false;
script.type = “text/javascript”;
if (s.charset) {
script.charset = s.charset;
}
if(s.cache === false){
url = url ( /?/.test( url ) ? “&” : “?” ) “_=” (new Date()).getTime();
}
script.src = url;
head.insertBefore(script, head.firstChild);
if(callback){
document.addEventListener? script.addEventListener(“load”, callback, false): script.onreadystatechange = function() {
if (/loaded|complete /.test(script.readyState)) {
script.onreadystatechange = null
callback()
}
}
}
}