我想添加并删除一个放在里面的div的类,当我点击另一个li ineed删除 来自激活的div的rightshapeactive类
<ul id="servicesleft">
<li class="left1">
<span>Lorem ipsum</span>
<div id="rightshape" class="t"></div>
</li>
<li class="left1">
<span>Lorem ipsum</span>
<div id="rightshape" class="t"></div>
</li>
<li class="left1">
<span>Lorem ipsum</span>
<div id="rightshape" class="t"></div>
</li>
</ul>
jQuery(document).ready(function() {
$('#servicesleft').delegate('li', 'click', function() {
$(this).find('#rightshape').addClass('rightshapeactive').siblings().removeClass('rightshapeactive');
});
});
答案 0 :(得分:1)
这应该有效。在.find('#rightshape')
之后,选择是指div
,而不是li
。 .end
会返回上一个选择。
jQuery(document).ready(function() {
$('#servicesleft').delegate('li', 'click', function() {
$(this).find('#rightshape')
.addClass('rightshapeactive')
.end()
.siblings()
.find('#rightshape')
.removeClass('rightshapeactive');
});
});
这可能会更好:
jQuery(document).ready(function() {
$('#servicesleft').delegate('li', 'click', function() {
$('.rightshapeactive').removeClass('rightshapeactive');
$('#rightshape', this).addClass('rightshapeactive');
});
});
答案 1 :(得分:0)
改为使用“t”类:http://jsfiddle.net/m27ra/
jQuery(document).ready(function() {
$('#servicesleft').delegate('li', 'click', function() {
$(this).parent().find('.t').removeClass('rightshapeactive');
$(this).find('.t').addClass('rightshapeactive');
});
});