Jquery 从分离的div容器中的链接移除类
我在尝试从链接及其同级添加/删除类时遇到了一些问题。我有3组链接包含在Jquery 从分离的div容器中的链接移除类,jquery,addclass,collapse,removeclass,siblings,Jquery,Addclass,Collapse,Removeclass,Siblings,我在尝试从链接及其同级添加/删除类时遇到了一些问题。我有3组链接包含在。我能够让jQuery从同一容器中的链接中添加和删除“Selected”类,但是如果我选择了另一个容器(组)中的链接,那么之前选择的链接将不会删除其类 组中的每个链接都将一个页面加载到iframe中,因此它们都是静态链接 基本上,我想知道是否有人能帮我弄清楚为什么jQuery不会从上一个链接中删除“selected”类,而上一个链接与新选择的链接位于不同的组中 非常感谢您的帮助/建议。提前谢谢您 这是我到目前为止的代码 --j
代码>。我能够让jQuery从同一容器中的链接中添加和删除“Selected”类,但是如果我选择了另一个容器(组)中的链接,那么之前选择的链接将不会删除其类
组中的每个链接都将一个页面加载到iframe中,因此它们都是静态链接
基本上,我想知道是否有人能帮我弄清楚为什么jQuery不会从上一个链接中删除“selected”类,而上一个链接与新选择的链接位于不同的组中
非常感谢您的帮助/建议。提前谢谢您
这是我到目前为止的代码
--jQuery--
--HTML--
试试这个
$(function() {
//Add 'selected' class to A tag within class collapse_content
$('.collapse_content a').on('click', function(e){
$('.collapse_content a').removeClass('selected');
$(this).addClass('selected');
});
//toggle the componenet with class collapse_tab
$(".collapse_tab").click(function() {
$(this).next(".collapse_content").slideToggle(500);
});
});
这是因为在jQuery中,您使用的是“this”,它只表示包含您单击的链接的div。如果您希望事件处理程序从所有链接中删除该类,而不管它们位于哪个“collapse\u content”div中,只需使用$(“.collapse\u content a”)作为选择器,而不是“this”
<div class="collapse_tab">Group 1</div>
<div class="collapse_content">
<a href="Link 1.asp" onclick="return handlelink(this)">Link 1</a><br>
<a href="Link 2.asp" onclick="return handlelink(this)">Link 2</a><br>
<a href="Link 3.asp" onclick="return handlelink(this)">Link 3</a><br>
<a href="Link 4.asp" onclick="return handlelink(this)">Link 4</a><br>
</div>
<div class="collapse_tab">Group 2</div>
<div class="collapse_content">
<a href="Link 1.asp" onclick="return handlelink(this)">Link 1</a><br>
<a href="Link 2.asp" onclick="return handlelink(this)">Link 2</a><br>
<a href="Link 3.asp" onclick="return handlelink(this)">Link 3</a><br>
<a href="Link 4.asp" onclick="return handlelink(this)">Link 4</a><br>
</div>
<div class="collapse_tab">Group 3</div>
<div class="collapse_content">
<a href="Link 1.asp" onclick="return handlelink(this)">Link 1</a><br>
<a href="Link 2.asp" onclick="return handlelink(this)">Link 2</a><br>
<a href="Link 3.asp" onclick="return handlelink(this)">Link 3</a><br>
<a href="Link 4.asp" onclick="return handlelink(this)">Link 4</a><br>
</div>
<div class="collapse_tab">Group 4</div>
<div class="collapse_content">
<a href="Link 1.asp" onclick="return handlelink(this)">Link 1</a><br>
<a href="Link 2.asp" onclick="return handlelink(this)">Link 2</a><br>
<a href="Link 3.asp" onclick="return handlelink(this)">Link 3</a><br>
<a href="Link 4.asp" onclick="return handlelink(this)">Link 4</a><br>
</div>
.collapse_tab {
text-decoration:none;
font-weight:bold;
background-color:#0cf;
color:#FFF;
font-size:11px;
padding: 2px;
margin:0px;
text-align:center;
border:1px solid #09f;
cursor: pointer;
}
.collapse_content {
font:Verdana, Arial, Helvetica, sans-serif;
margin: 0px;
padding: 0px;
font-size: 10px;
background-color:#0cf;
border:#fff 1px solid;
}
$(function() {
//Add 'selected' class to A tag within class collapse_content
$('.collapse_content a').on('click', function(e){
$('.collapse_content a').removeClass('selected');
$(this).addClass('selected');
});
//toggle the componenet with class collapse_tab
$(".collapse_tab").click(function() {
$(this).next(".collapse_content").slideToggle(500);
});
});