gpt4 book ai didi

javascript - 如何从 .js 脚本内部获取 .js 脚本的主机名或地址?

转载 作者:行者123 更新时间:2023-11-28 10:59:43 27 4
gpt4 key购买 nike

我有一个网站,可以从任意数量的不同服务器下载相同的脚本:

<script type="text/javascript" src="http://server1.example.com/hello.js"></script>
<script type="text/javascript" src="http://server2.example.com/hello.js"></script>
<script type="text/javascript" src="http://server3.example.com/hello.js"></script>
<script type="text/javascript" src="http://server4.example.com/hello.js"></script>

每个脚本都有一个本地范围的变量,该变量必须是从中下载脚本的服务器的主机名:因此,当我从 server1.example.com 下载脚本时,该变量的值必须为是 server1.example.com

这可以在完全不需要服务器端编程的情况下完成吗? (可以发送AJAX请求,但解决方案不能包含任何服务器端代码)

请注意,我正在寻找托管脚本的主机,而不是当前浏览器页面的主机;这意味着我不是在寻找 window.location

最佳答案

我认为下面的代码可以提供帮助:

var scripts = document.getElementsByTagName('script');
for(var a = 0; a < scripts.length; a++){
if(scripts[a].src.indexOf('<<<--###-->>>') > 0 )
var ThisScriptPath = scripts[a].src.substr( 0, scripts[a].src.lastIndexOf('/'));
}

您需要将 <<--###-->>> 替换为您的脚本名称,并且路径将存储在 ThisScriptPath 中(记得使用最后的斜杠)

提示:在投入生产之前使用警报检查结果

关于javascript - 如何从 .js 脚本内部获取 .js 脚本的主机名或地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7584203/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com