js 如何获取class的元素
答案:4 悬赏:50
解决时间 2021-01-18 04:38
- 提问者网友:欲望失宠
- 2021-01-17 20:32
js 如何获取class的元素
最佳答案
- 二级知识专家网友:西岸风
- 2021-01-17 20:42
非IE6,7,8可以直接用自带的属性 getElementsByClassName,如果需要考虑兼容,就需要自己写了。下面是自己写的:
function getClassName(obj,sName) //-->obj是要获取元素的父级
{ //-->sName是class名字
if(document.getElementsByClassName)
{
return obj.getElementsByClassName('sName');
}
else
{
var aTmp = obj.getElementsByTagName('*');
var aRes=[];
var arr =[];
for(var i=0;i {
arr = aTmp[i].className.split(' ');
for (var j=0;j {
if(arr[j] == sName)
{
aRes.push(aTmp[i]);
}
}
}
return aRes;
}
}
大概思路,是将你要获取class元素父级下的所有元素都取出来,再循环查找className,满足的元素存到数组中,然后返回。
function getClassName(obj,sName) //-->obj是要获取元素的父级
{ //-->sName是class名字
if(document.getElementsByClassName)
{
return obj.getElementsByClassName('sName');
}
else
{
var aTmp = obj.getElementsByTagName('*');
var aRes=[];
var arr =[];
for(var i=0;i {
arr = aTmp[i].className.split(' ');
for (var j=0;j {
if(arr[j] == sName)
{
aRes.push(aTmp[i]);
}
}
}
return aRes;
}
}
大概思路,是将你要获取class元素父级下的所有元素都取出来,再循环查找className,满足的元素存到数组中,然后返回。
全部回答
- 1楼网友:笑迎怀羞
- 2021-01-18 00:03
function getElementsByClassName(n) {
var classElements = [],allElements = document.getElementsByTagName('*');
for (var i=0; i< allElements.length; i++ )
{
if (allElements[i].className == n ) {
classElements[classElements.length] = allElements[i];
}
}
return classElements;
}
var redClassElements = getElementsByClassName('aa');
for (var i=0; i //do something
}
var classElements = [],allElements = document.getElementsByTagName('*');
for (var i=0; i< allElements.length; i++ )
{
if (allElements[i].className == n ) {
classElements[classElements.length] = allElements[i];
}
}
return classElements;
}
var redClassElements = getElementsByClassName('aa');
for (var i=0; i
}
- 2楼网友:旧脸谱
- 2021-01-17 22:37
1
2
- 3楼网友:玩世
- 2021-01-17 22:00
1.function getElementsByClassName(n) {
2. var classElements = [],allElements = document.getElementsByTagName('*');
3. for (var i=0; i< allElements.length; i++ )
4. {
5. if (allElements[i].className == n ) {
6. classElements[classElements.length] = allElements[i];
7. }
8. }
9. return classElements;
10.}
使用方法如下:
1.var redClassElements = getElementsByClassName('red');
2.for (var i=0; i 3. document.alert("*******************");
4.}
2. var classElements = [],allElements = document.getElementsByTagName('*');
3. for (var i=0; i< allElements.length; i++ )
4. {
5. if (allElements[i].className == n ) {
6. classElements[classElements.length] = allElements[i];
7. }
8. }
9. return classElements;
10.}
使用方法如下:
1.var redClassElements = getElementsByClassName('red');
2.for (var i=0; i
4.}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯