js(不用jquery)怎样判断一个div标签在页面中出现了多少次?

2024-11-07 11:30:35
推荐回答(5个)
回答(1):

1. 获得指定id的元素:

document.getElementById("指定的id值");

2. 根据指定的name属性获得元素:

document.getElementsByName("设定的name属性的值");

3. 获得指定标签名的所有元素:

document.getElementsByTagName("指定的标签名");

4. 自定义方法,根据给出的class属性的值查找所有具有同值的元素:

/**
* 查询所有含有指定class值的标签。
* @param className 指定的class名字,type:String。
* @param parent 父节点,不填则默认从body标签开始找,type:HTTPDocument。
* return 返回查找到的所有元素,type:Array
*/
function getElementsByClassName(className, parent){
    parent = (parent == undefined ? document.body : parent);
    var childrenList = parent.children;
    var i = 0, len = childrenList.length;
    var list = [];
  拦铅喊  while( i < len ){
        var 激宽nowNode = childrenList[i];
        var classNames = nowNode.className.split(" ");
        var j = 0, lenj = classNames.length;
        while( j < lenj ){
            if(nowNode.className === classNames[j]){
                list.push(nowNode);
         简野       break;
            }
            j++;
        }
        var cList = [];
        if( nowNode.children.length > 0 ){
            cList = getElementsByClassName(className, nowNode);
        }
        list = list.concat(cList);
        i++;
    }
    return list;
}

回答(2):

根据getElementsByTagName获取div标签的个数。

getElementsByTagName() 方法可返回带有指定标签名的对象的集合。

语法:

document.getElementsByTagName(tagname)

说明:

getElementsByTagName() 方法返回简春元素的顺序是它们在文档中的镇态顺序。

返回值:

数组格式,数组元素是标拦旅耐签对象

举例:

var divArr = document.getLElementsByTagName('div');//获取div标签
var cnt = divArr.length;//获取页面div标签出现的次数

回答(3):

1.document.getElementsByTagName("悔孝镇p").length;

2. function getDivByClass(className, parents){
parents = parents || document;
if (parents.getElementsByClassName) {
return parents.getElementsByClassName(className);
};
var nodes = parents.getElementsByTagName("div");
ret = [];
for (i = 0; i <碧粗 nodes.length; i++) {
if (this.hasClass(nodes[i], className))
ret.push(nodes[i]);
};
return ret;
}

var divArray = getByClass("className"慎指,document.body);
alert(divArray.length);

回答(4):

var divLen = document.getElementsByTagName("悄卖山div").length;
console.log(divLen); //即为一个页配晌面中所有div标启中签的个数

回答(5):










1

2

3

4