当url哈希更改时强制重新加载

时间:2014-11-21 06:54:58

标签: javascript jquery html url hash

在我的应用程序中有一个标题菜单。我们有5个具有相同页面URL的菜单项,具有不同的哈希值,例如

  1. 主页(www.sample.com)
  2. 品牌第1页(www.sample.com/test.html#brand1)
  3. 品牌第2页(www.sample.com/test.html#brand2)
  4. 品牌第3页(www.sample.com/test.html#brand3)
  5. 品牌第4页(www.sample.com/test.html#brand4)
  6. 所有品牌页面都将导航到同一页面(test.html),但使用不同的哈希值。

    问题:当我点击 HOME 中的任何品牌页面链接时,该页面会自动导航到test.html并检查哈希标记并自动通过ajax加载项目。

    但是当我点击品牌页面内的任何品牌页面链接时,页面就不会令人耳目一新。

1 个答案:

答案 0 :(得分:2)

<强> HTML:

<div id="menu">
    <a href="#1">brand 1</a>
    <a href="#2">brand 2</a>
</div>

<强> JQ:

$(function() {

    $('#menu a').click(function(e){
        var url=$(this).attr('href');

        window.location.href=url;// ## change url with hash
        location.reload();       // ## reload page

        e.preventDefault();      // ## prevent default click action 
    })

})