我是jQuery的新手,我在Stack上搜索过类似的问题,但是没有找到这个特定的问题(我确定很常见)。
我有一个包含默认类的项目列表。我想使用toggleClass来添加翻转效果。问题在于所有的lis都是切换类,而不仅仅是正在徘徊的类。
<ul>
<li class="my-class"><div id="my-item>1</div></li>
<li class="my-class"><div id="my-item>2</div></li>
<li class="my-class"><div id="my-item>3/div></li>
</ul>
$('.my-class, li').on('mouseenter', function() {
$('#my-item').toggleClass('project-home-title-hover');
});
答案 0 :(得分:3)
使用this
范围选择器。同时删除.my-class
和li
之间的逗号,并将选择器更改为li.myclass
。另外my-item
应该是一个类而不是id,id必须是唯一的。标记还需要一些工作,其中一个div和缺少引号都有未封闭的结束标记。
$('li.my-class').on('mouseenter mouseleave', function() {
$('.my-item', this).toggleClass('project-home-title-hover');
});
<强> HTML 强>
<ul>
<li class="my-class"><div class="my-item">1</div></li>
<li class="my-class"><div class="my-item">2</div></li>
<li class="my-class"><div class="my-item">3</div></li>
</ul>
Js Fiddle: http://jsfiddle.net/SEMKr/1/