2010-08-25 87 views
13

我试图让一个兄弟姐妹的孩子jQuery选择(在页面上的多个部分,从而需要刚好到达兄弟姐妹的孩子(而thna能够使用一般选择器)jQuery选择器的兄弟姐妹的孩子?

HTML:

<div class="tour-section"> 
       <div class="screenshots left"> 
        <div class="tab tab1"></div> 
        <div class="tab tab2"></div> 
        <div class="tab tab3"></div> 
        <div class="tab tab4"></div> 
       </div> 
       <div class="talking-point section1"> 
        <h2 class="primary-color-text">Create your listing</h2> 
        <p class="subheader">Create your job listing by adding a few simple details</p> 
       </div> 
</div> 

JS:?

$(".talking-point.section1").mouseenter(function() { 
      $(this).siblings(".screenshots").children("tab").hide(); 
      $(".screenshots .tab1").show(); 
      $(this).siblings(".screenshots").css("background-position","0 0"); 
     }); 
+1

你真的不应该把一个'class'上* *的一切。这样做可能是没有正确使用选择器的一个标志。 – 2010-08-25 07:18:36

+0

如果.talking-point.section1在.screenshots之前,你甚至可以通过这个CSS选择器获得.tab:'''.talking-point.section1 + .screenshots .tab''' – esp 2013-01-25 19:58:14

回答

13

按道理它应该工作你错过.children() Jquery选择器的点.

.children(".tab") 
+2

那不是很不幸: – Walker 2010-08-26 19:38:56

2

你的意思children(".tab")

2

使用find代替children工作对我来说:

$(this).siblings(".screenshots").find("tab")