关注前端
« »
2010年01月17日JS/jQuery

document.getElementsByClassName

当我们在用javascript对DOM操作中,有时需要能直接获取标签元素的className就会很方便得多,下面写一个document.getElementsByClassName函数。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
document.getElementsByClassName = function(className,oBox) 
{
	//适用于获取某个HTML区块内部含有某一特定className的所有HTML元素
	this.d= oBox || document;
	var children = this.d.getElementsByTagName('*') || document.all;
	var elements = new Array();
	for (var ii = 0; ii < children.length; ii++) {
		var child = children[ii];
		if(child.className==className)
		{
		    elements.push(child);
			continue;
		}
		var classNames = child.className.split(' ');
		for (var j = 0; j < classNames.length; j++) 
		{
			if (classNames[j] == className) 
			{
				elements.push(child);
				continue;
			}
		}
	}
	return elements;
}

日志信息 »

该日志于2010-01-17 16:12由 Aluan 发表在JS/jQuery分类下, 你可以发表评论。除了可以将这个日志以保留源地址及作者的情况下引用到你的网站或博客,还可以通过RSS 2.0订阅这个日志的所有评论。

2条评论

  1. poor 说:

    这个的执行效率如何?

  2. mon前端 说:

    效率好像不高

发表评论 »

返回顶部