我正在创建一个利用几个较小插件的jQuery插件。我不想强迫用户为每个插件添加单独的脚本标记。我可以将它们全部放在同一个文件中,但似乎应该有更好的方法。
我能想出的唯一想法是将每个插件分开,但是在一个公共文件夹中。在主插件中,我会做类似以下的事情:
if(!$.isFunction(pluginName){
//load the plugin from common folder
}
这种方法有什么本质上的错误吗?
有没有人知道更好的方法?
答案 0 :(得分:0)
您可以尝试使用src创建标记并将其附加到文档。这样你就可以“导入”其他js。
这样的事情:
function importJs(src) {
var script = document.createElement("script"); //assuming that there is no lib yet, we do it manually
script.type = "text/javascript";
script.src = src;
document.body.appendChild(script);
}
//and then we can do the imports
importJs("jquery.js");
importJs("somePath/someOtherLib.js");
//so on
这样,你可以只有一个文件js“import”并集中你想要使用的任何其他js。
例如,对于动态css导入,您可以执行几乎相同的操作,但是您使用标记更改脚本标记,而不是使用src属性作为使用href属性的路径,但您仍需要设置类型属性,但对于css mime:“text / css”。