遍历Dom树

遍历Dom树,可以返回当前页面有那些元素及其数量

 

(function(){

    //遍历Dom树
    var doms={
        length:0
    }
    function eachDomTree(root){
        var childNodes=root.childNodes,
            len=childNodes.length;
        for(var i=0;i<len;i++){
            var item=childNodes[i];
            if(item.nodeType===1){
                var tagName=item.nodeName.toLowerCase();
                if(tagName in doms){
                    doms[tagName]++
                }else{
                    doms[tagName]=1;
                    doms['length']++
                }
            }
            if(item.childNodes.length>0){
                eachDomTree(item)
            }
        }
    }
    eachDomTree(document.body)
    console.log(doms)
//Object {length: 18, form: 1, div: 59, input: 102, script: 7…} 当前页面的元素和数量 }())

 

posted @ 2017-08-08 20:29  哈哈敲敲  阅读(163)  评论(0编辑  收藏  举报