JavaScript中当前脚本的URL

时间:2010-11-23 01:15:17

标签: javascript jquery

如何查找被调用的JS文件的URL?

假设JS文件(属于库的一部分)和HTML文件(应用程序)位于不同的服务器上。要查找HTML文件的URL很简单。但是如何在JS文件本身中找出JS文件服务器的服务器名称和路径? (编辑:有一个加载器在同一目录结构中调用thsi库的其他JS文件)

最好是JQuery或纯JS解决方案。

修改

在我从你的答案和评论中学到了什么之后,我决定将加载程序代码实际移动到第一台服务器上更加清晰,html仍然存在,这可以避免这个问题。

2 个答案:

答案 0 :(得分:4)

在JQuery中你可以做到:

$('script').each(function(i, e) {
    alert($(e).attr('src'));
});

答案 1 :(得分:2)

你可以遍历脚本标签并检查SRC,我想......

var els = document.getElementsByTagName("script");
var str = "";

for(var i = 0; i < els.length; i++) {
  var src = els[i].src;
  if(src.length > 0)
    str += src + "\n";
}

alert(str);

将以下内容粘贴到浏览器栏中,以查看此页面上脚本的网址...

javascript:var els = document.getElementsByTagName("script"); var str = ""; for(var i = 0; i < els.length; i++) { var src = els[i].src; if(src.length > 0) { str += src + "\n";}}alert(str);

注意:IE似乎只遍历<script>标记内的<body>元素。