在jQuery中处理片段哈希

时间:2013-09-01 16:12:09

标签: javascript jquery html

我正在基于文本菜单中的单击事件填充一个名为content的div元素。这工作正常,但我想处理这些情况:

  1. 在网址中使用#片段刷新页面。目前,它导致空白div。
  2. 转到不带URL中的#fragment的页面应显示使用blog.php填充div
  3. 提前致谢

    代码

    <!-- Transparent box -->
    <div id="box">
    
    <!-- Menu -->
    <a href="#blog" onclick="$('#content').load('blog.php')">blog</a> |
    <a href="#code" onclick="$('#content').load('code.php')">code</a> |
    <a href="#portfolio" onclick="$('#content').load('portfolio.php')">portfolio</a> |
    <a href="#about" onclick="$('#content').load('about.php')">about</a>
    
    <div class="bar"></div>
    
    <!-- Content -->
    <div id="content"></div>
    
    <div class="bar" id="footer"></div>
    </div>
    

1 个答案:

答案 0 :(得分:1)

你可以通过几种方式解决..也许是这样:

// Run on document ready
$(function() {
    // Get hash or set "#blog" as default
    var hash = document.location.hash || "#blog";

    // Trigger click event of anchor that has href as url hash
    $('[href="'+hash+'"]').click();
});