我正在研究一個需要jQuery和Raphael的小JS庫。我已經在自述文件中記錄了這個事實,但我不喜歡用戶必須手動包含三個JS庫來使用它的想法。Javascript庫應該動態添加依賴關係嗎?
如果庫沒有找到它們,它們會動態地包含依賴項,這有什麼優點和缺點?像這樣:
if (!window.jQuery) {
var _my_script=document.createElement('SCRIPT');
_my_script.type='text/javascript';
_my_script.src='//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js?';
document.getElementsByTagName('head')[0].appendChild(_my_script);
console.log("Loaded jQuery");
} else {
console.log("jQuery already loaded");
}
// get Raphael if not found
if (typeof(Raphael) === "undefined") {
var _my_script=document.createElement('SCRIPT');
_my_script.type='text/javascript';
_my_script.src='//cdnjs.cloudflare.com/ajax/libs/raphael/2.1.0/raphael-min.js?';
document.getElementsByTagName('head')[0].appendChild(_my_script);
console.log("Loaded Raphael");
} else {
console.log("Raphael already loaded");
}
潔食?
謝謝!大膽的答案。 – 2013-02-18 17:00:07