我正在使用以下脚本来运行项目菜单并测量左偏移量。我的问题不是每个元素都包含'ul'我正在寻找。我试过通过ul查看并击中父级,但从未正确触发过。然后我尝试测量.length而不去。我也试过比较'undefined'。我完全难以理解,我正在做一些愚蠢的事情,我只是看不出明显的事情。
$('#nav ul.nav-tier-2 li').each(function(){
var leftQ = $(this).find('ul').offset().left;
//Extra code below
}
HMTL的例子
<nav id="nav">
<ul class="nav-tier-1">
<li>
<a>Link Text</a>
<ul class="nav-tier-2">
<li>
<a></a>
<ul class="nav-tier-3">
<li><a> Last link</a></li>
</ul>
</li>
</ul>
</li>
答案 0 :(得分:0)
如果没有HTML结构的示例,这是猜测,但它会删除额外的搜索并避免不存在的后代UL
:
注意:第一个选择器更具体(使用>
子选择器)以避免包含孙子LI。你可能需要调整这个,因为你有很多层次。
$('#nav ul.nav-tier-2 > li ul').each(function(){
var leftQ = $(this).offset().left;
//Extra code below
});