我的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();
});
我很感激您的帮助。
谢谢。
答案 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
属性。
此外,当您使用正确的a
与id
联系时,您需要显示其父,li
,而不是本身。最初隐藏的是父li
。