如何获取当前加载脚本的src?

时间:2015-01-13 13:18:05

标签: javascript

我从网站加载脚本:

<script type='text/javascript' src='http://www.mybridge.com/scripts/init.js?IDL=1'></script>

在加载的init.js脚本中,我有:

var scripts = document.getElementsByTagName('script');
var myScript = scripts[scripts.length - 1];

但如果我试着看src

console.log("src is: "+myScript.src);
它向我展示了另一个脚本的链接,而不是当前(加载/处理)脚本的src。

我哪里错了?我该怎么办?

2 个答案:

答案 0 :(得分:1)

要获取脚本的URL,您必须对脚本有更多了解,因为您没有理由想要的脚本是HTML文档中的最后一个脚本。

例如,如果您知道其名称为"init.js"并且您想要IDL参数,则可以

function getIDL(){
     var scripts = document.getElementsByTagName('script');
     for (var i=0; i<scripts.length; i++) {
         var m = scripts[i].src.match(/\/init\.js\?IDL=(\d+)/);
         if (m) {
            return m[1]; // return the IDL
         }
     }
     return null;
}

答案 1 :(得分:0)

你也可以试试这个:

var scripts = document.getElementsByTagName('script');
console.log(scripts);
var len = scripts.length;
for(var i = 0 ; i < len ; i++){
    if(scripts[i].src.search('init') >= 0){
       console.log(scripts[i].src) ;
    }
}

JSFIDDLE Demo