[英]2 divs on the same block show one hide the other onclick and loop
我在一个内容块上有 2 个 div,一个是活动的,另一个是隐藏的。
我想单击 div,隐藏第一个并显示第二个。
然后当我点击第二个隐藏它并显示第一个时。
然而,我还有 12 个具有相同结构和类的块,它们需要具有此功能。
为了记录,我什至在一个 div 上都没有让它工作。
<div class="feature-list-item">
<div class="first-one">
<div class="imgbox">
<p>some content<p/>
</div>
</div>
<div class="second-one">
<div class="imgbox">
<p>some content<p/>
</div>
</div>
这是css:
.first-one {display:block;} .second-one {display:none;}
我想考虑最简单的方法 jquery, javascript 没关系
这是一个带有隔离列表的示例:
$(document).ready(function(){ $('.block').on('click', '.item', function(e){ $(this) .removeClass('active') .siblings('.item') .addClass('active'); }); });
.blue .item { background: blue; } .green .item { background: green; } .item { padding: 10px; margin: 10px; color: white; display: none; } .item.active { display: block; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="block blue feature-list-item"> <div class="item active first-one"> <div class="imgbox"> <p>Box 1<p/> </div> </div> <div class="item second-one"> <div class="imgbox"> <p>Box 2<p/> </div> </div> </div> <div class="block green feature-list-item"> <div class="item active first-one"> <div class="imgbox"> <p>Box 3<p/> </div> </div> <div class="item second-one"> <div class="imgbox"> <p>Box 4<p/> </div> </div> </div>
这是我找到的解决方案。 隐藏单击并显示下一个。 我希望您尝试显示下一个但不是特定的,如果您尝试显示特定的内容,那么您将更改代码。
HTML
<div class="click show">
<div class="imgbox">
<p>some content<p/>
</div>
</div>
<div class="click hidden">
<div class="imgbox">
<p>some content<p/>
</div>
</div>
<div class="click hidden">
<div class="imgbox">
<p>some content<p/>
</div>
</div>
<div class="click hidden">
<div class="imgbox">
<p>some content<p/>
</div>
</div>
<div class="click hidden">
<div class="imgbox">
<p>some content<p/>
</div>
</div>
<div class="click hidden">
<div class="imgbox">
<p>some content<p/>
</div>
</div>
CSS
.show{
width:200px;
height:100px;
background-color:red;
}
.hidden{
display:none;
}
JS
$(document).ready(function(){
$('.click').click(function(){
$(this).removeClass('show');
$(this).addClass('hidden');
$(this).next('.hidden').addClass('show');
$(this).next('.hidden').removeClass('hidden');
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.