Jquery,根据点击的名称显示隐藏相关链接

时间:2014-06-11 20:52:57

标签: jquery show-hide

我的HTML呈现可点击链接和相关详细信息:

<ul class="topindex">
    <li>
        <h4><a title="A folder" href="#A-folder" rel="nofollow" class="index-letters">A</a></h4>
    </li>
    <li>
        <h4><a title="B folder" href="#B-folder" rel="nofollow" class="index-letters">B</a></h4>
    </li>
    <li>
        <h4><a title="C folder" href="#C-folder" rel="nofollow" class="index-letters">C</a></h4>
    </li>
    <li>
        <h4><a title="D folder" href="#D-folder" rel="nofollow" class="index-letters">D</a></h4>
    </li>
</ul>
<ul class="index-list">
    <li><a name="A-folder" id="A-folder"></a>
        <h5><a title="Back to index" href="#tags_top" rel="nofollow">A</a></h5>

        <ul class="links">
            <li class="cat-item"><a href="http://www.related.link" title="A" rel="nofollow">A text</a>
            </li>
        </ul>
    </li>
    <li><a name="B-folder" id="B-folder"></a>
        <h5><a title="Back to index" href="#tags_top" rel="nofollow">B</a></h5>

        <ul class="links">
            <li class="cat-item"><a href="http://www.related.link" title="B" rel="nofollow">B text</a>
            </li>
        </ul>
    </li>
    <li><a name="C-folder" id="C-folder"></a>
        <h5><a title="Back to index" href="#tags_top" rel="nofollow">C</a></h5>

        <ul class="links">
            <li class="cat-item"><a href="http://www.related.link" title="C" rel="nofollow">C text</a>
            </li>
        </ul>
    </li>
</ul>

我的目标是最初隐藏所有li,并仅在点击字母链接时显示详细信息。

我已尝试过以下代码,但它不起作用。即,单击链接时,它不会显示和隐藏部分。

 $('.index-list li').hide();
    $("a.index-letters").click(function() {
    $('.index-list li').hide();
    $('#'+$(this).attr('name')).show();   
 });

我很感激您的帮助。

谢谢。

1 个答案:

答案 0 :(得分:1)

这应该这样做:

$('.index-list li').hide();

$("a.index-letters").click(function() {
  $('.index-list li').hide();
  $($(this).attr('href')).parent('li').show();   
});

请看上面的一行:$($(this).attr('href')).parent('li').show();

您应该获得所点击内容的href属性的内容。这是你存储了你正在寻找的id。您尝试访问时没有name属性。

此外,当您使用正确的aid联系时,您需要显示其li,而不是本身。最初隐藏的是父li