location.hash立即消失

时间:2012-02-16 16:45:36

标签: jquery

我正在构建一个实时搜索+过滤方法,并且我注意到当我使用该方法(这是一个示例)时,它在URL中显示后进行哈希 - 它会立即被删除。如果我将该哈希集移动到例如按钮的单击方法它工作正常。为什么?

$('.menu-link').click(function () {            
        window.location.hash = 'search-container';
});

2 个答案:

答案 0 :(得分:10)

它正在消失,因为您的链接正在被跟踪,导致该位置更改为href的{​​{1}}。如果您在点击处理程序的末尾添加a,则该位置不会更改。

答案 1 :(得分:2)

试试这个:

$('.menu-link').click(function (event) {     
    event.preventDefault();
    window.location.hash = 'search-container';
});