提取外部javascript查询字符串/锚定值:file.js#foo=bar

提取外部javascript查询字符串/锚定值:file.js#foo=bar,javascript,query-string,cross-domain,anchor,extract,Javascript,Query String,Cross Domain,Anchor,Extract,我试图加载一个跨域javascript文件,并希望在查询字符串上传递一个变量。我见过上面使用的“#”方法,但不确定如何从file.js中提取“foo”值。在没有服务器端帮助的情况下如何处理这个问题 谢谢。脚本获取书签中的值的唯一方法是在文档中找到它的script标记,并从scr属性中提取它 URL的书签部分没有在请求中发送,因此您也无法使用服务器端代码获取它。实际上,有一种方法可以获取当前的脚本,例如: // external script (function () { var script

我试图加载一个跨域javascript文件,并希望在查询字符串上传递一个变量。我见过上面使用的“#”方法,但不确定如何从file.js中提取“foo”值。在没有服务器端帮助的情况下如何处理这个问题


谢谢。

脚本获取书签中的值的唯一方法是在文档中找到它的
script
标记,并从
scr
属性中提取它


URL的书签部分没有在请求中发送,因此您也无法使用服务器端代码获取它。

实际上,有一种方法可以获取当前的
脚本,例如:

// external script
(function () {
  var scripts = document.getElementsByTagName('script'),
      currentScript = scripts[scripts.length - 1],
      scriptUrl = currentScript;

  alert("scriptUrl: " + scriptUrl);
})();
上述方法之所以有效,是因为在执行
script
元素时,它是DOM的最后一个
script
元素(
scripts[scripts.length-1]

然后只需对
scriptUrl
进行字符串操作即可提取GET参数

检查一个示例,外部脚本为