Window.location.hash需要语法帮助

Gab*_*Gab 7 hash jquery window.location

我的网站位于http://visualise.ca/,当您点击缩略图加载帖子时,它将使用ajax加载页面中的帖子.关闭帖子时,它使用此代码,以便在不重新加载页面的情况下将网址更改回http://visualise.ca/:

$("#close").live("click", function(event) {
    $("#board").fadeOut("slow");
    $("#board-wrapper").slideUp("slow");
    $("html,body").delay(1000).animate({scrollTop: 0}, 300);
    window.location.hash = "";
    window.history.pushState(null,null,site_url+"/");
    return false;
});
Run Code Online (Sandbox Code Playgroud)

但在IE8中,它将其更改为http://visualise.ca/#而不是http://visualise.ca/.有没有办法纠正这个并确保它改为http://visualise.ca/

小智 1

我最近碰巧做了很多 ajax 历史。我正在尝试自己的实现,在页面和模态中导航并返回和第四个。取得了很好的进展。

自从测试开始以来,我注意到根哈希;一旦更改回初始页面(一切开始的地方),如果单击“浏览器后退”按钮,则只会丢失哈希值 (#)。如果我将哈希值更改回“”,它将始终在末尾显示/#。

就 IE8 而言,我不相信除了使用 iFrame hack 之外还有任何解决方案,并且由于我还没有时间测试 IE8/iframe hack,所以我无法对此发表评论。

对于我的解决方案,我混合使用了哈希和纯命令控制。我应该在几周内对最终版本进行全面测试(一厢情愿)。

此外,谁在乎 url 末尾是否留下了哈希值/尖锐值。一旦我访问了某个网站,我就不会再查看该 URL;我只是看页面的内容。真的:我突然意识到,只有当我想复制和粘贴时,网址才重要。除此之外,我从不看它。