[英]How to toggle class between two element using jquery?
我有手风琴列表,并且总是打开一个列表。 单击按钮时如何切换活动班级?
<ul class="accordion one-open">
<li class="active">
<div class="title">Title 1</div>
<div class="content">Content 1</div>
</li>
<li>
<div class="title">Title 2</div>
<div class="content">Content 2</div>
</li>
</ul>
<button>Toggle the content </button>
使用.toggleClass("active")
并检查以下代码段。
$(document).ready(function(){ $("#toggel_class").on('click',function(){ $("ul li").toggleClass("active"); }); });
.active { color: red }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <ul class="accordion one-open"> <li class="active"> <div class="title">Title 1</div> <div class="content">Content 1</div> </li> <li> <div class="title">Title 2</div> <div class="content">Content 2</div> </li> </ul> <button id="toggel_class">Toggle the content </button>
$("button").on("click", function() {
$("li").toggleClass("active");
});
单击按钮时,这会切换类: https : //jsfiddle.net/mqhyLohe/
尝试查看JavaScript classList.toggle()(与IE9及更低版本不兼容)。 否则,请看一下jQuery UI(如果jQuery是您要漫游的路径)。
检查是否有效
$(".accordion li").click(function(){
$("li").removeClass('active');
$(this).addClass('active');
});
你必须给你的清单一个ID
$("#item1").click(function(){
$(".active").removeClass("active");
$(this).addClass("active")
});
我也曾经遇到过同样的问题。 使用图标解决了。 请在这里参考答案
这是我以前使用的:
if($(this).text() == "-")
{
$(this).text("+");
}
else {
$('#accordion .opener').text("+");
$(this).text("-");
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.