addClass 到当前 li 元素并删除类
addClass to current li element and removeClass
我正在尝试将蓝色addClass
到单击下一个当前li
并removeClass
上一个li
。但是,我似乎无法让它工作,它将类添加到另一个 li 中,但似乎删除了以前的类。
小提琴:https://jsfiddle.net/5otouLxg/1/
var $li = $("li a#t1:first-child");
var $li2 = $("li a#t2:first-child");
$('li').click(function () {
if ($li.children().has
var $li = $("li a#t1:first-child");
var $li2 = $("li a#t2:first-child");
$('li').click(function () {
if ($li.children().hasClass('nav-1')) {
$li.children().addClass('blue');
$li2.children().removeClass('blue');
}
if ($li2.children().hasClass('nav-2')) {
$li.children().removeClass('blue');
$li2.children().addClass('blue');
}
});
.blue {
color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<li>
<a id="t1">
<span class="nav-1">HELLO</span>
</a>
</li>
<li>
<a id="t2">
<span class="nav-2">HELLO</span>
</a>
</li>
我认为您可以通过简化代码来实现您想要的: 适用于 两个 li 或 一堆 li
$('li').click(function () {
$(this).children('a').addClass('blue');
$(this).siblings().children('a').removeClass('blue');
});
我使用了另一个脚本来使其工作
$('li').click(function(){
$('li').removeClass('blue');
$(this).addClass('blue');
});
该脚本将删除所有 li 的所有"蓝色"类(如果超过 2 个),并将该类添加到已单击的类中。
希望这是你需要的。
小提琴演示
相关文章:
- 从组件状态的数组中删除元素
- 从数组中删除元素的最佳方法是:javascript/jquery
- 正则表达式条件来删除元素
- 使用javascript删除元素时出现的问题
- 当会话存储阵列中存在大量元素时,如何从中删除元素
- 从角度数组中删除元素
- AngularJs localStorage在循环中删除元素
- 在使用jquery插入之前删除元素
- 如何删除元素列表中的类并添加到另一个元素 Jquery.
- 更新分组条形图(转换或删除元素组)
- 向下滚动后如何用同一类逐个删除元素
- 如何防止 jQuery 事件在删除元素时冒泡
- 从jQuery对象中删除元素
- 如何删除元素的结束标记,添加一些文本,然后重新添加标记
- 从画布中删除元素
- 如何解析html以删除元素并只返回其位置的标题
- 使用 V8 从密集数组中删除元素的最佳方法是什么
- 如何使用jquery删除元素
- 根据成员属性从数组中删除元素
- 从中删除元素'的父元素,并将其附加到其他元素