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