jquery - 单击 'Read More' 按钮会导致打开所有 block 而不是其特定的父 block

标签 jquery html css

我必须展示一些功能列表。在初始页面加载时,我只想显示三点。 一旦我点击“阅读更多”按钮,该特定的 div 休息功能应该被打开。

但问题是单击“阅读更多”按钮会导致打开所有功能 block 。

请考虑这个 html :

<div class="parent first-feature">
    <div class="feature-listing">
        <ul>
            <li>Some Content</li>
            <li>Some Content</li>
            <li>Some Content</li>
            <li class="r-more"><a href="JavaScript:void(0);" class="read-more">Read More!</a></li>                
        </ul>
    </div>
    <div class="more-content" style="display:none;">
        <ul class="feature-listing">                
            <li>Some More Content</li>
            <li>Some More Content</li>
            <li>Some More Content</li>
            <li>Some More Content</li>
            <li>Some More Conten</li>    
            <li class="r-less"><a href="JavaScript:void(0);" class="read-more">Read Less</a></li>                
        </ul>
    </div>
</div>

<div class="parent second-feature">
    <div class="feature-listing">
        <ul>
            <li>Some Content</li>
            <li>Some Content</li>
            <li>Some Content</li>
            <li class="r-more"><a href="JavaScript:void(0);" class="read-more">Read More!</a></li>                
        </ul>
    </div>
    <div class="more-content" style="display:none;">
        <ul class="feature-listing">                
            <li>Some More Content</li>
            <li>Some More Content</li>
            <li>Some More Content</li>
            <li>Some More Content</li>
            <li>Some More Conten</li>    
            <li class="r-less"><a href="JavaScript:void(0);" class="read-more">Read Less</a></li>                
        </ul>
    </div>
</div>

这是我写的函数:

$('.read-more').click(function(){
    $('.more-content').slideToggle('slow');
    $('.r-more').toggleClass('hide-block');
});

最佳答案

这是一个 FIDDLE

$('.read-more').click(function() {
  $(this).closest('.parent').find('.more-content').stop().slideToggle('slow');
  $('.r-more').toggleClass('hide-block');
});

关于jquery - 单击 'Read More' 按钮会导致打开所有 block 而不是其特定的父 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24816905/

相关文章:

javascript - 滚动时导致 div 闪烁的脚本

javascript - 使用 javascript 单击时隐藏和显示相同的元素

jquery - ASP.NET - 滚动时出现模态弹出窗口问题

javascript - 如何使用 Javascript 获取继承的 CSS 值?

html - 响应式 - 将图标和文本对齐到菜单项的中心

javascript - CSS :before doesnt work perfectly in nested divs

php - 将数据从 DB 导出到 HTML?

jquery - 在 jquerymobile header 中交换登录/注销按钮

php - 图片上传输入: 1 input that will take up to 4 uploads

javascript - Css 日期选择器未正确显示