在JavaScript函数中导入JavaScript文件
可能的重复:在JavaScript文件中包含JavaScript文件如何在另一个JavaScript文件中包含JavaScript文件?
在JavaScript函数()中导入JavaScript文件(例如file.js
)的最佳方法是什么?
例如,什么是取代待办陈述的最佳方式:
function doSomething() {
if (xy.doSomething == undefined) {
// TODO: load 'oldVersionPatch.js'
}
...
}
可能最好的解决方案是创建脚本元素并将其添加到HTML页面中。
http://api.jquery.com/jQuery.getScript/
要么
(function(){
this.__defineGetter__("__FILE__", function() {
return (new Error).stack.split("n")[2].split("@")[1].split(":").slice(0,-1).join(":");
});
})();
(function(){
this.__defineGetter__("__DIR__", function() {
return __FILE__.substring(0, __FILE__.lastIndexOf('/'));
});
})();
function include(file,charset) {
if (document.createElement && document.getElementsByTagName) {
var head = document.getElementsByTagName('head')[0];
var script = document.createElement('script');
script.setAttribute('type', 'text/javascript');
script.setAttribute('src', __DIR__ + '/' + file);
if(charset){
script.setAttribute('charset', charset);
}
head.appendChild(script);
}
}
var filename = 'oldVersionPatch.js';
var js = document.createElement('script');
js.setAttribute("type","text/javascript");
js.setAttribute("src", filename);
document.getElementsByTagName("head")[0].appendChild(js);
..应该做到这一点
非常简单,在JavaScript中创建一个<script>
元素,将src
属性附加到任何URL并附加到DOM。 这应该做到这一点。