【问题标题】:Jquery hide and show css class but only content inside current div, not any otherJquery隐藏和显示css类,但只有当前div中的内容,而不是任何其他
【发布时间】:2014-07-21 22:56:37
【问题描述】:

我在 wordpress 中有一个循环,它生成一个 div,里面有两个 div,一个隐藏和一个显示元素,如下所示 -

<div class="vacancy-desc">
 <div class="short-desc">
   Content
 </div>                 
 <div class="full-desc">
   Content               
 </div>       
 <a href="#" class="link show">MORE <span class="fa fa-chevron-right"></span></a>
 <a href="#" class="link hide"><span class="fa fa-chevron-right"></span> LESS</a>
</div>

因为这是在循环中,所以同一页面上可能有多个这样的框。

我希望能够单击 .show 链接以展开 .full-desc(通过 css 隐藏)和 .show 消失,以及 .hide 出现(也被 css 隐藏) .然后我想要相反的地方,我可以点击 .hide 它将切换 .full-desc 关闭、消失和取消隐藏 .show。

我可以让这一切发生,但它针对页面上的每个 .hide .show 。我缺少什么让我可以创建此脚本但仅针对其父 div 中的类?

<script>
$('.vacancy-desc a.show').click(function(event){
  event.preventDefault();
  $(this).prev().slideToggle('slow');
  $(this).hide();
});

$('.vacancy-desc a.hide').click(function(event){
  event.preventDefault();
  $(this).prev().slideToggle('slow');
  $(this).hide();
});
</script>

【问题讨论】:

    标签: jquery css parent slidetoggle


    【解决方案1】:

    你可以试试这样的:

    <script>
        $('.vacancy-desc a.show').click(function(event){
            event.preventDefault();
            var $this = $(this);
            $this.parents('.vacancy-desc').find('.full-desc').slideToggle('slow');
            $this.hide();
            $this.parents('.vacancy-desc').find('a.hide').show();
        });
    
        $('.vacancy-desc a.hide').click(function(event){
              event.preventDefault();
              var $this = $(this);
              $this.parents('.vacancy-desc').find('.full-desc').slideToggle('slow');
              $this.hide();
              $this.parents('.vacancy-desc').find('a.show').show();
        });
    </script>
    

    【讨论】:

    • 太棒了。您忘记将变量添加到第二部分中:o)谢谢,这也很有意义,我正在慢慢学习 jquery,这是一个很好的干净示例!干杯
    • 我很高兴你给了我机会找出问题所在,我做到了!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多