2015-06-19 76 views
4

我只裝過的JS庫在HTML文檔的頭部像這樣從一個函數內加載js庫?

<head> 
<script src="somelink.js" /> 
</head> 

我的問題是,我可以在一個函數中加載這個腳本,如果是什麼將是什麼樣子?

function() { 
src="somelink.js" 
return somemethod.bla; 
} 

會這樣嗎?大概不會。

我有我的理由想要做到這一點,但現在不會讓他們離開這個問題。

是否有可能從一個函數內加載庫中,如果是這樣的話會是什麼樣子?

回答

1

試試這個:

<!doctype html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8"> 
    <title>load demo</title> 
    <style> 
    body { 
    font-size: 12px; 
    font-family: Arial; 
    } 
    </style> 
    <script src="https://code.jquery.com/jquery-1.10.2.js"></script> 
</head> 
<body> 

<b>Successful Response (should be blank):</b> 
<div id="success"></div> 
<b>Error Response:</b> 
<div id="error"></div> 

<script> 
$("#success").load("somelink.js", function(response, status, xhr) { 
    if (status == "error") { 
    var msg = "Sorry but there was an error: "; 
    $("#error").html(msg + xhr.status + " " + xhr.statusText); 
    } 
}); 
</script> 

</body> 
</html> 
0

以下是在script.js中完成的操作。 https://github.com/ded/script.js/

var el = doc.createElement("script"), 
loaded = false; 
el.onload = el.onreadystatechange = function() { 
    if ((el.readyState && el.readyState !== "complete" && el.readyState !== "loaded") || loaded) { 
    return false; 
    } 
    el.onload = el.onreadystatechange = null; 
    loaded = true; 
    // done! 
}; 
el.async = true; 
el.src = "script-to-load.js"; 
document.getElementsByTagName('head')[0].insertBefore(el, head.firstChild); 

如果您使用的script.js庫,然後就可以加載這樣的腳本。

$script('script-to-load.js');