当选择特定锚点时是否可以触发 JavaScript 运行?
假设我在网页上有一个锚点,如下所示:
<a name="comegetit"></a>
如果页面是通过位于该锚点上的链接到达的,是否有运行 JavaScript 的方法? (例如像 这样的链接)。我不认为有,但我希望有。
Say I have an anchor on a webpage like so:
<a name="comegetit"></a>
Is there a way of running a javascript if the page is arrived at by a link that lands on this anchor? (e.g. a link like <a href="http://myawesomewebpage.com/page#comegetit"></a>
). I don't think there is but I would like there to be.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如果您只希望将这一字符串作为 URL 锚点:
如果您正在执行其他复杂的操作,您还可以将
window.location.hash
与正则表达式进行匹配。If you only expect this one string as the URL anchor:
If you're doing anything else complex, you can also match
window.location.hash
against a regular expression.我使用真正简单的历史 (http://code.google.com/p/reallysimplehistory/)
然后,在我的代码中,我做了这样的事情:
如果您碰巧为哈希标签或其他内容添加了书签,这甚至会在初始页面加载时被触发。
非常有用,并且抽象了 window.location.hash 附带的所有浏览器特定的 BS
Josh
I use Really Simple History (http://code.google.com/p/reallysimplehistory/)
Then, in my code I do something like this:
This even gets fired on the initial page load, if you happen to bookmark a hash tag or whatnot.
Quite useful, and abstracts away all the browser specific B.S. that comes with window.location.hash
Josh
您可以尝试对 onload 事件进行操作并检查 window.location 内容以提取片段标识符...它应该可以工作。
You can try to act on the onload event and check for the window.location content to extract the fragment identifier... it should work.