Jquery隐藏并显示css类,但仅显示当前div中的内容,而不显示任何其他内容

Jquery隐藏并显示css类,但仅显示当前div中的内容,而不显示任何其他内容,jquery,css,parent,slidetoggle,Jquery,Css,Parent,Slidetoggle,我在wordpress中有一个循环,它生成一个div,里面有两个div,一个hide和一个show元素,如下所示- <div class="vacancy-desc"> <div class="short-desc"> Content </div> <div class="full-desc"> Content </div> <a

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

<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.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>

$('.Emptance desc a.show')。单击(函数(事件){
event.preventDefault();
$(this.prev().slideToggle('slow');
$(this.hide();
});
$('.Emptance desc a.hide')。单击(函数(事件){
event.preventDefault();
$(this.prev().slideToggle('slow');
$(this.hide();
});

您可以尝试以下方法:

<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>

$('.Emptance desc a.show')。单击(函数(事件){
event.preventDefault();
var$this=$(this);
$this.parents('.publication desc')。find('.full desc')。slideToggle('slow');
$this.hide();
$this.parents('.publication desc').find('a.hide').show();
});
$('.Emptance desc a.hide')。单击(函数(事件){
event.preventDefault();
var$this=$(this);
$this.parents('.publication desc')。find('.full desc')。slideToggle('slow');
$this.hide();
$this.parents('.discounce desc').find('a.show').show();
});

。您忘了将变量添加到第二部分:o)谢谢,这也很有意义,我正在慢慢学习jquery,这是一个很好的干净示例!谢谢,我很高兴你给了我机会找出它的毛病,我做到了!