嗨,目前我正在开发一个jQuery插件,我在其中进行API调用。而不是硬编码API的URL,我希望它是相对于插件的JS文件的URL
所以说我有以下设置
页面加载文件
http://mydomain1.com
在该页面中我加载
<script src="http://mydomain2.com/Scripts/myPlugin.min.js">
在该JS文件中,我将API网址加载为
api_endpoint: "/myApi/api/v1",
我希望这会解决
http://mydomain2.com/myApi/api/v1
但它解析为
http://mydomain1.com/myApi/api/v1
在Javascript中是否存在我可以设置相对于加载脚本而不是页面本身的JS文件的域名?
答案 0 :(得分:5)
根据我对您的问题的理解,您需要将外部文件的网址作为基本网址。因此,您可以使用以下代码访问:
...
var scriptTags = document.getElementsByTagName('script');
var filterPath = scriptTags[0].src.split('?')[0]; // Hopping your script is on first place of dom and removing any ?query
var scriptFilePathUrl = filterPath.split('/').slice(0, -1).join('/');
alert(scriptFilePathUrl);