0

我很难找到我偶然发现的这个问题的词。

好吧,我有一个链接(正常的a href)我想要做的是点击我想要显示一个具有.more类的div。虽然我将在 ul 中有这个,所以我需要这个函数来处理几个链接,所有链接都显示 li 中的第二个 div,类为 .more。

这是 HTML 标记,希望您能理解我的问题。

谢谢!

<li>
<div class="less">
<h1>Title</h1>
<p>12:00 - 13:00</p>
<a class="show_more" href="">Show more</a>
</div>
<div class="more" id="more_">
<p class="text">text</p>
<p class="place">Room / <a href="" class="address">An address</a></p>
<a class="show_less" href="">Show less</a>
</div>
</li>
4

2 回答 2

2

href 不应为空,因此您应该添加#到 href,然后定位锚点,找到.less元素,下一个.more元素将是要显示的元素。
单击.show_less按钮时,它将是.more您要隐藏的最接近的元素:

$('.show_more').on('click', function(e) {
    e.preventDefault();
    $(this).closest('.less').next('.more').show();
});

$('.show_less').on('click', function(e) {
    e.preventDefault();
    $(this).closest('.more').hide();
});
于 2013-07-13T00:09:18.443 回答
2
$wrapper.on('click', 'a.show_more', function (e) {
    e.preventDefault();
    $(this).closest('li').find('.more').show();
});

哪里$wrapper是引用事物的包装元素的 jQuery 对象,例如本例中的 UL 元素。

于 2013-07-13T00:09:19.980 回答