Jquery隐藏并显示css类,但仅显示当前div中的内容,而不显示任何其他内容
我在wordpress中有一个循环,它生成一个div,里面有两个div,一个hide和一个show元素,如下所示-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
<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,这是一个很好的干净示例!谢谢,我很高兴你给了我机会找出它的毛病,我做到了!