Javascript 确定jQuery插件的相对位置
我正在开发一个jQuery插件,它由一个主js文件组成,可以加载其他几个js文件。我希望能够将所有文件放入“myPlugin”文件夹,并让主js文件找到其他脚本,而不管导入主文件的页面的位置如何Javascript 确定jQuery插件的相对位置,javascript,jquery,jquery-plugins,Javascript,Jquery,Jquery Plugins,我正在开发一个jQuery插件,它由一个主js文件组成,可以加载其他几个js文件。我希望能够将所有文件放入“myPlugin”文件夹,并让主js文件找到其他脚本,而不管导入主文件的页面的位置如何 location.pathname将获取加载插件的页面路径,但如何告诉插件加载与其自身位置相关的内容 在下面的示例中,我希望myPlugin.js查找required1.js它是从pageA还是pageB加载的: pageA.html /../pageB.html myPlugin/ -myPlu
location.pathname
将获取加载插件的页面路径,但如何告诉插件加载与其自身位置相关的内容
在下面的示例中,我希望myPlugin.js
查找required1.js
它是从pageA
还是pageB
加载的:
pageA.html
/../pageB.html
myPlugin/
-myPlugin.js (How does `myPlugin.js` find `required1.js`?)
-required1.js
-required2.js
谢谢…我能想到的唯一一件事就是在包含页面的DOM中找到对myPlugin.js的引用:
$('script[src$="myPlugin.js"]').attr("src").replace(/myPlugin\.js$/, 'required1.js')
不过,这是一个有漏洞的问题,而且容易出错。我只会在绝对需要零配置解决方案的情况下使用它。否则,我会让用户配置插件,让它知道在哪里可以找到其他文件。我唯一能想到的就是在包含页面的DOM中找到对myPlugin.js的引用:
$('script[src$="myPlugin.js"]').attr("src").replace(/myPlugin\.js$/, 'required1.js')
不过,这是一个有漏洞的问题,而且容易出错。我只会在绝对需要零配置解决方案的情况下使用它。否则,我只会让用户配置插件,以便它知道在哪里可以找到其他文件。如果使用绝对路径而不是相对路径,这将非常简单。@Henrik-没有办法提前知道插件将安装在哪里的绝对位置。问得好。你也应该研究像这样的脚本加载程序,为你做所有艰苦的工作。如果你使用绝对路径而不是相对路径,那就简单多了。@Henrik-没有办法提前知道插件安装的绝对位置。问得好。您还应该研究这样的脚本加载程序,为您完成所有艰苦的工作。这应该适用于这种情况。一个更通用的解决方案是(在正常情况下,它将指向当前正在执行的脚本)。一个更通用的解决方案是(在正常情况下,它将指向当前正在执行的脚本)。