首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >你能在不影响历史的情况下使用散列导航吗?

你能在不影响历史的情况下使用散列导航吗?
EN

Stack Overflow用户
提问于 2010-02-21 14:29:21
回答 4查看 47.3K关注 0票数 102

我担心它可能是impossible,但是有没有一种方法可以改变URL 的散列值,而不在浏览器的历史中留下一个条目,而不需要重新加载?或者做同样的事情?

就具体而言,我正在开发一些基本的散列导航,如下所示:

代码语言:javascript
运行
复制
//hash nav -- works with js-tabs
var getHash = window.location.hash;
var hashPref = "tab-";
function useHash(newHash) {
    //set js-tab according to hash
    newHash = newHash.replace('#'+hashPref, '');
    $("#tabs li a[href='"+ newHash +"']").click();
}
function setHash(newHash) {
    //set hash according to js-tab
    window.location.hash = hashPref + newHash;

    //THIS IS WHERE I would like to REPLACE the location.hash
    //without a history entry

}
    // ... a lot of irrelavent tabs js and then....

    //make tabs work
    $("#tabs.js-tabs a").live("click", function() {
        var showMe = $(this).attr("href");
        $(showMe).show();
        setHash(showMe);
        return false;
    });
    //hash nav on ready .. if hash exists, execute
    if ( getHash ){
        useHash(getHash);
    }

显然,使用的是jQuery。这个想法是,在这个特定的例子中,1)让用户返回每一个选项卡更改可以通过堆积不必要的引用而有效地“打破后退按钮”,以及2)如果他们点击刷新,不保留他们当前所在的选项卡是一种恼人的事情。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2305069

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档