javascript - 尝试转到 HTML anchor 时运行 JavaScript 函数

标签 javascript html anchor

无论我是想转到 index.html#ExistingAnchor 还是 index.html#NotExistingAnchor 或任何其他可能存在或可能不存在的 anchor 我想要运行一些 javascript 函数的页面。

<html>
<body>
    <a name="ExistingAnchor"></a>
</body>
</html>

我可以使用什么 javascript 代码来实现它?

页面可能已经加载,所以我只是从浏览器地址栏访问同一页面上的 HTML anchor ,而无需重新加载页面。

此外,当我使用“后退”和“前进”浏览器历史记录按钮时访问了同一页面上的多个 anchor ,我还希望运行一些 JavaScript 函数,以便我可以识别我是哪个 anchor 目前正在运行 - 你也可以告诉我这个吗?

最佳答案

在现代浏览器上,您可以实现 onHashChange 事件,在 IE6/7 上,您将需要使用一些涉及 iFrame 和 window.setTimeout 的技巧。

如果您使用 jQuery,jQuery 历史插件将实现您想要的功能,否则您可以研究它并根据需要移植它。 http://tkyk.github.com/jquery-history-plugin/

关于javascript - 尝试转到 HTML anchor 时运行 JavaScript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5275733/

相关文章:

javascript - 为所有子项添加事件监听器

c++ - QTextedit 设置 anchor 并滚动到它

javascript - 如何使没有 href 属性的链接可访问?

javascript - 在 http.get 之后从另一个 Controller 更新一个 Controller 中变量的值?

javascript - Angularjs + 停止将数据更新到变量中

javascript SlickGrid 列宽

android - 在 Android Webview 版本 50.+ 中选择下拉菜单不起作用

css - 将满足的 div 内的 div 扩展到全宽

html - 使 html svg 对象也成为可点击的链接

javascript - 如何将 foreach 变量从 Laravel Blade 传递到 JavaScript?