2014-01-23 52 views
1
<ul class="main-menu"> 
    <li> 
     <a href="domain.com/host">Host</a> 
     <ul class="sub-menu nav"> 
      <li> 
       <a href="domain.com/host/party">Party</a> 
      </li> 
     </ul> 
    </li> 
</ul> 

$('.main-menu li a').each(function(ev){ 
     var name = $(this).text(); 
     console.log(name); 
    }); 

上面的代碼同時列出HostParty當所有我想要的是HostjQuery的每個菜單項,但不從子菜單項

jsFiddle

回答

2

您可以使用>用於選擇與特定元素父母,它只能看到標記結構的一個級別,沒有更深。

$('.main-menu>li>a').each(function(ev){ 
     var name = $(this).text(); 
     console.log(name); 
}); 

Fiddle

有關CSS選擇器的詳細信息,請訪問here

1
$('.main-menu > li > a').each(function(ev){ 
     var name = $(this).text(); 
     console.log(name); 
    }); 

添加的>是你所需要的 - 這只是表明直接後裔。它被稱爲child selector

1

您可以使用父子代替祖先後代。

Live Demo

$('.main-menu > li > a').each(function(ev){ 
    var name = $(this).text(); 
    console.log(name); 
}); 
0

使用child-selector

$('.main-menu>li>a').each(function(ev){ 
//code here 
});