jQuery的遍歷同胞結構設計函數為什么是elem.nodeType !== 1呢?謝謝各位!
謝謝各位!jQuery的遍歷同胞結構設計函數為什么是elem.nodeType !== 1而不是elem.nodeType !== 9(祖先遍歷結構設計是判斷nodeTyp是否為9)
function sibling(cur, dir) {
? while ((cur = cur[dir]) && cur.nodeType !== 1) {}
? return cur;
}
謝謝各位!jQuery的遍歷同胞結構設計函數為什么是elem.nodeType !== 1而不是elem.nodeType !== 9(祖先遍歷結構設計是判斷nodeTyp是否為9)
function sibling(cur, dir) {
? while ((cur = cur[dir]) && cur.nodeType !== 1) {}
? return cur;
}
2015-08-30
舉報
2018-12-07
找到當前cur第一個nodeType為1的兄弟節點(因為 li 和 li 之間其實有空白的文本節點,查找兄弟節點時會找到這些文本節點,但并不是我們想要的,文本節點的nodeType為3,滿足nodeType !== 1 這個條件,再次進入循環,直到找到我們要的節點為止)
2016-09-17
這樣寫匹配到第一個后就跳出循環,直接return。難不成你還想繼續while下去?
2016-06-07
我竟然也糾集了好久,就是找到nodeType==1的元素、!==一直堪稱==
2015-12-02
祖先遍歷是一直向上查找,知道找到nodeType==9,也就是根節點document。而同胞遍歷的是兄弟節點,判斷的是html元素(大寫的HTML標簽),nodeType==1。