js获取id号和class类名的区别

在很多时候我们用的都是js来取得id的号:用document.getElementById("id")这样,如果是取得class类名呢,怎么用写呢,谢谢了!

原生JS通过id和class获取元素是用,document.getElementById(IDname),document.getElementsByClassName('ClassName');

    兼容性:ID兼容,class 不兼容IE6,7,8

    数量: 通过ID只能获取一个dom元素,通过class可以获取一组元素。

    通用性:ID不能重复,class可以重复,所以class比较好用,这也是jQuery能被广泛应该的原因(选择器好)。

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-08-07
获取元素还是class来得快,用id,如果是你说的上千个文档,那是不现实的。

滚动也不难。

1 如果是id,可以直接用js取出来id,然后使用

window.location = window.location+'#获取到的ID'

这样滚动到锚点。

2 如果是class,那就用

var l = document.getElementsByClassName('类名称');
for(var i=0;i<l.length;i++){
if(!l[i].id) {
l[i].setAttribute('id', 'mark'+i);
}
}

也就是先获取到所有的class元素,再给没有id属性的元素添加一个id,最后执行1的操作就可以了。
第2个回答  2009-06-17
这要用到框架了 prototype就有这样的方法 getElementsByClassName()本回答被提问者采纳
第3个回答  2009-06-17
document.getElementsByTagName("class")
返回的是一个数组
相似回答