尝试转到HTML锚点时运行JavaScript函数

10p*_*10p 3 html javascript anchor

无论我是否试图访问index.html#ExistingAnchor或index.html #NotExistingAnchor或者页面上可能存在或可能不存在的任何其他锚点,我都希望运行一些javascript函数.

<html>
<body>
    <a name="ExistingAnchor"></a>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

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

该页面可能已经加载,所以我只是从浏览器地址栏访问同一页面上的HTML锚点而不重新加载页面.

此外,当我使用后退和前进浏览器历史记录按钮时访问了同一页面上的一些锚点,我想要运行一些JavaScript函数,以便我可以识别我当前正在使用的锚点 - 你能告诉我这个吗?

Jar*_*eer 5

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

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