Перебор дерева элементов - не хочет работать скрипт...
Вот функция - DOMTreeViewer, результат ее работы должно быть количество узлов html документа (count).
Не работает и все тут - пишет в консоли - hasChildNodes in not a function, уже мозги закипают..помогите ошибку найти... var elem = document.getElementsByTagName('html'); console.log(DOMTreeViewer(elem)); // function DOMTreeViewer function DOMTreeViewer(node) { if(node.hasChildNodes()) { for(var i = 0; i < node.childNodes.length; i++) { if(node.childNodes[i].nodeType == 1) { if(node.childNodes[i].hasChildNodes()) { var count =+1; DOMTreeViewer(node.childNodes([i])); } } } } return count; } |
var elem = document.getElementsByTagName('html')[0];
|
Цитата:
|
объявите count глобальной
var count=0; var elem = document.g.... ..... count++ |
Ну и запускать надо после загзузки
var count=0; window.onload=function(){var elem = document.g....} |
можно проще сделать
<script>var cn=0; window.onload=function(){var els = document.getElementsByTagName('*'); for(var i=0;i<els.length;i++){ if(els[i].hasChildNodes()){cn++;} };alert(cn);} </script> |
Цитата:
|
<script>var count=0;alert(0);
window.onload=function(){var elem = document.getElementsByTagName('html')[0]; function DOMTreeViewer(node) { if(node.hasChildNodes()) { for(var i = 0; i < node.childNodes.length; i++) { if(node.childNodes[i].nodeType == 1) { if(node.childNodes[i].hasChildNodes()) { count++; DOMTreeViewer(node.childNodes[i]); } } } } return count; } alert('***'+DOMTreeViewer(elem));}; </script> |
Часовой пояс GMT +3, время: 09:29. |