jquery选择器用于同一个类的不同实例

时间:2010-11-27 07:18:26

标签: jquery-selectors

我不知道标题是否合适......但这是我的情况....我有一个叫做dropper的类和另一个类drop_list ......这两个是子类的class drop_head,只要点击dropper,drop_list就必须下拉...


           <div class="drop_head">
              <div class="dropper"> Content-1</divr>
              <div class="drop_list"> List-1</div>
           </div>
           <div class="drop_head">
              <div class="dropper"> Content-2</divr>
              <div class="drop_list"> List-2</div>
           </div>

当点击content-1时,list-1必须切换,当点击content-2时,list-2必须下拉...我如何使用单个jquery实现这一点.. ??提前谢谢......

2 个答案:

答案 0 :(得分:2)

如果我理解你的话,那应该很简单:

$('.drop_head').each(function(i,e){
   $('.dropper', e).click(function(){
      $('.drop_list', e).slideToggle();
   });
});

使用.drop_head作为列表和可点击元素的上下文,您不需要使用id。此外,如果你意外地省略了一个列表或滴管,它只会搞砸那个“小部件”并且不会影响其他部分,closest不会出现这种情况。

答案 1 :(得分:0)

你有两种方式(我看到=))
- 只为你的情侣drop-list / dopper提供两个不同的ID名称

<div class="dropper" id="id_1"> Content-1</divr> 
          <div class="drop_list" id="id_1"> List-1</div>  
<div class="dropper" id="id_2"> Content-2</divr> 
          <div class="drop_list" id="id_2"> List-2</div>

然后说出类似的话:

$(".dropper #id_1").click(function(){$("#id_1").slideToggle("slow")})

或更短:

$(".dropper").click(function(){$(this).closest('drop_list').slideToggle()})

希望有帮助 卢卡