好了,兩個小時過去了,我不能修復這個...查找第一個元素層次,而不是在孩子
我:
<section id="sectionmain"> Section1 <article data-type="mainarticle" class="page-article" id="home-main"> <section> Section2 <nav data-parent="home-main" data-type="mainleft" class="page-left">Nav2</nav> </section> </article> <nav data-type="mainleft" class="page-left"> Nav1 </nav> </section> $("#sectionmain").first().find("[data-type='mainleft']")[0];
參見:http://jsfiddle.net/uYZmq/3/
我想查找#sectionmain
目標的子項的第一個元素,該元素的data-type
的值爲"mainleft"
。
正如你可以在小提琴中看到的,我有一個嵌套的<article>
塊。其中也包含<nav>
,與data-type
相同,但我不想那個,我想要第一次出現。但不知何故,無論是Firefox和鉻,認爲第二個嵌套的是第一個,這是沒有意義的。有沒有辦法解決這個問題,並找到目標的真正第一個元素?
我試過.children()
,其中.closest()
和其他組合的整個負載,但沒有。
即使存在比此更多的嵌套,我也需要它。
我只想元素的ID中進行搜索,然後找到「其」<nav>
,而不是它的兒童<nav>
。所以基本上限制搜索到一個級別。
(我需要被命名爲數據類型相同(頁面左側),它是通過CSS樣式。我不希望任何其他類或變量添加的元素)
/編輯:我不希望[0]也是[1],我希望代碼可以在任何情況下都能正常工作,因爲如果在文章之前出現這種情況,它就會運行起來...