遞迴尋找頁面所有元素節點
阿新 • • 發佈:2019-02-03
//建立一個回撥函式尋找所有元素節點 function queryNode(node) { //查詢所有子節點並且放到nodeList這個陣列中 var nodeList = node.childNodes; //定義一個數組,用來存放符合要求的元素節點 var arrNode = []; //遍歷nodeList這個陣列,尋找符合要求的元素節點 for (var i = 0; i < nodeList.length; i++) { var node = nodeList[i]; //nodeType == 1;元素節點 //nodeType == 2;屬性節點 //nodeType == 3;文字節點 if(node.nodeType == 1){ arrNode.push(node); //繼續進行遞迴尋找下一級的節點 var temp = queryNode(node); //把兩個陣列進行合併,就是所有符合要求的節點 arrNode = arrNode.concat(temp); } } return arrNode; }