【发布时间】:2011-01-12 13:04:53
【问题描述】:
我通常会有一个我想要使用的 JavaScript 文件,它需要在我的网页中定义某些变量。
所以代码是这样的:
<script type="text/javascript" src="file.js"></script>
<script type="text/javascript">
var obj1 = "somevalue";
</script>
但我想做的是:
<script type="text/javascript"
src="file.js?obj1=somevalue&obj2=someothervalue"></script>
我尝试了不同的方法,目前最好的方法是像这样解析查询字符串:
var scriptSrc = document.getElementById("myscript").src.toLowerCase();
然后搜索我的价值观。
我想知道是否有另一种方法可以在不构建函数来解析我的字符串的情况下做到这一点。
你们都知道其他方法吗?
【问题讨论】:
-
这是一个重复的问题 (stackoverflow.com/questions/1017424/…),在我看来这是一个被误导的设计。要么使用你的第一个变量解决方案(好的),要么让脚本定义一个函数,然后用变量调用它(更好)。
-
我正在寻找一个更新的解决方案,利用新的 ECMAScript 6 功能......如果有的话
-
如果站点是 HTTPS 并且完全启用了 CSP,则使用任何内部脚本都会触发 CSP 报告。 CSP 文档中给出的原因是允许内部元素可以使注入更容易。
-
我在我的 HTML 中使用 Script 标签来包含一个 JavaScript 文件,并在 src 属性中指定参数。但在 JavaScript 方面,window.location 不包含参数。如何找回它们?
标签: javascript parameter-passing