所以我有这个菜单:
<ul id="body-nav">
<li class="menu1"><a href="#">Meet The Team</a></li>
<li class="menu2"><a href="what-we-do">What We Do</a></li>
<li class="menu3"><a href="#">See Us In Action</a></li>
<li class="menu4"><a href="#">Get In Touch</a></li>
</ul>事情是,我想使用"pushState“事件来更改我的网站的网址,因为网站非常依赖于javascript。在我的脚本中,代码是:
$("#body-nav .menu2 > a").click(function () {
history.pushState("", "What We Do", $("#body-nav .menu2 > a").attr("href"));
});根据我的google搜索,它应该正常工作,但是每次我单击它时都会出现这个错误:请求的URL /mainsite/what-we-do在这个服务器上找不到。
谢谢你的帮助。
发布于 2013-09-20 15:28:26
您必须取消链接的默认操作。
$("#body-nav .menu2 > a").click(function (event) {
history.pushState("", "What We Do", $("#body-nav .menu2 > a").attr("href"));
event.preventDefault(); // <==
});https://stackoverflow.com/questions/18920316
复制相似问题