【发布时间】:2017-12-28 07:18:37
【问题描述】:
我想使用查询字符串参数,这样我就可以指定 DOM 元素的名称。
我有一些需要标题高度的代码,我希望该代码适用于任何主题。只有有时标头使用<header> 标记,有时它有一个特定的标识符,有时它是一个特定的类......为了能够一遍又一遍地重用该代码,我想将它包含在一种方式如:
<script src="https://www.example.com/js/my-script.js?c=header"></script>
我想要做的是从该 JavaScript URL 中获取“?c=header”部分,以使用jQuery(".header") 向搜索发送一个 DOM 对象。我们有没有办法从正在执行的 JavaScript 中知道 JavaScript 本身的 URL?
显然,我知道window.location.href,这不是我要查找的 URL。
【问题讨论】:
-
尝试
getElementsByTagName('script');然后var qs = scriptSrc.split('?')[1] -
getElementsByTagName('script');不会返回所有脚本标签吗?虽然我想我可以找到"/my-script.js"...啊... -
您可以在脚本上添加 ID 标签,然后使用该 ID 获取特定的脚本 URL
-
Mayur,我想我很困惑,因为我认为 ID 不起作用。但是,如果您将该特定脚本放置在主题中,您也可以为该脚本指定一个特定 ID。我在想我不想更改页面内容,因为每当主题更新时,这可能会改变。尽管使用 jQuery() 的任何一种方式,都可以很容易地进行任何类型的搜索。
-
@Rajesh 再次阅读了我的评论。脚本如果不是异步直接执行,这意味着 DOM 中的 last 脚本元素是正在执行的元素。
标签: javascript jquery url query-string