【发布时间】:2012-11-26 16:23:45
【问题描述】:
我得到了以下 HTML:
<ul class="specs">
<li>
<div class="trigger">› City (2)</div>
<div class="cityByLocation">
<ul>
<li class="cityInfo">
<div class="cityName" style="float: left;">
› New York
</div>
<div class="cityDistance" style="float: left;">
430 miles
</div>
<div class="btn-take"></div>
</li>
<li class="cityInfo">
<div class="cityName" style="float: left;">
› Chicago
</div>
<div class="cityDistance" style="float: left;">
430 miles
</div>
<div class="btn-take"></div>
</li>
</ul>
</div>
</li>
<ul>
当我点击“City (2)”时,下面的两个 div 都会出现。但是,我想为他们添加一个类。
这是我现在的 js:
$('.trigger').click(function ()
{
$(this).siblings('div').eq($(this).index()).toggle();
$(this).eq($(this).index()).toggleClass("locationSelected");
return false;
});
这会在名称“City (2)”后面添加蓝色背景,但不会添加我想要的底层 div。
它是类“cityByLocation”的 div,我想将类 locationSelected 添加到。
编辑:
我最终使用了
$('.trigger').click(function () { $(this).siblings('div').eq($(this).index()).toggle(); $(this).toggleClass("locationSelected"); $(this).siblings('div').eq($(this).index()).toggleClass("locationSelected");
return false; });
【问题讨论】:
-
$(this).eq($(this).index()) 和 $(this) 不一样吗?
-
看来你是对的。我对 jquery 选择感到很困惑
标签: javascript jquery css