1

我在页面上有两个链接

<a href="#Form">Form</a>
<a href="#Image">Image</a>

我做了一个简单的点击。

$('a[href="#Form"]').on('click',function(){
    alert("hi");
});

我也希望 HASH 也能正常工作。

if(window.location.hash = "#Form"){alert("hi");}

页面加载后,它显示 ALERT,然后我单击图像链接,网址变为www.myweb.com/#Image,如果我按(历史)按钮,网址看起来www.myweb.com/#Formalert("hi")不再工作了。

即使我按下按钮,我可以让它仍然工作吗?

4

2 回答 2

3

您可以尝试以下方法:

$(window).on('hashchange',function(){
    if(document.location.hash == '#Form'){
        alert('hi')
    }
});
于 2013-06-13T22:30:19.603 回答
1

首先你的情况是错误的: -

if(window.location.hash = "#Form"){alert("hi");}

to 

if(window.location.hash == "#Form"){alert("hi");}

您需要绑定 hashchange 事件的其他事情。并非所有浏览器都支持此事件。在这种情况下,您需要使用 javascript 的 setInterval 函数检查哈希更改。

于 2013-06-13T22:25:54.503 回答