js通过元素class名字获取元素集合的具体实现

js通过元素class名字获取元素集合的具体实现,第1张

获取元素集合的方法有很多,接下来为大家介绍喜爱使用js通过元素class名字获取元素集合的方法

代码如下:

function

getElementsByClassName(n)

{

var

classElements

=

[],allElements

=

documentgetElementsByTagName('');

for

(var

i=0;

i<

allElementslength;

i++

)

{

if

(allElements[i]className

==

n

)

{

classElements[classElementslength]

=

allElements[i];

}

}

return

classElements;

}

思路:首先获取div对象,然后使用className属性获取类名,关键代码如下

1

documentgetElementById("test")className

实例演示:

1、HTML结构

1

2

<div id = "test" class="test_class">我的类名为test_class</div>

<input type='button' value='获取div类名' onclick="fun()"/>

2、javascript代码

1

2

3

4

function fun(){

name = documentgetElementById("test")className;

alert(name);

}

jquery通过任何选择器取得的对象都是jquery对象而不是JavaScript的dom对象不能用js的方法进行 *** 作 而需要使用jquery对象支持的方法 如果是通过class的话取得的是jquery对象数组

ps 如果想把jquery对象装换为js对象可以用以下方法

1 var obj = $('#xx')[0] 获得dom对象

2 对于数组

var obj = $('xx')each(function(){

alert(this)//这里 this获得的就是每一个dom对象 如果需要jquery对象 需要写成$(this)

});

js获取元素的class名:

var className=documentgetElementsByClassName('names')[0];

jquery获取元素的class名:

var className = $('names')atrr('class');

相关概念

getElementsByClassName() 方法返回文档中所有指定类名的元素集合,作为 NodeList 对象。

NodeList 对象代表一个有顺序的节点列表。NodeList 对象 我们可通过节点列表中的节点索引号来访问列表中的节点(索引号由0开始)。

 取得对应类和标签的HTML元素 

 clsName:给定类名 

 tagName:给定的HTML元素,如果为任意 tagName='' 

  

/  

function getElementsByClassName(clsName, tagName) {  

    var ClassElements = [];  

    selElements = documentgetElementsByTagName(tagName);  

  

    for (var i = 0; i < selElementslength; i++) {  

        if (selElements[i]className == clsName) {  

            ClassElements[ClassElementslength] = selElements[i];  

        }  

    }  

    return ClassElements;  

}

js中有四种获取dom的方法:

根据ID获取对象:documentgetElementById(ID);

根据class获取对象数组:documentgetElementsByClassName("box");

根据tag获取对象数组:documentgetElementsByTagName("p");

根据name获取对象数组:documentgetElementsByName(NAME);

用jquery选择器就多得去了,一般都用jquery,js一大串代码用jquery几个符号搞定。

根据ID获取对象:$('#ID');

根据class获取对象数组:$("box");

根据tag获取对象数组:$("p");;

根据name获取对象数组:$('input[name="nw"]');

例子:

<div class='view view-case-view-all' >

<div class= 'view-content view-content-case-view-all' >

<table border="1" >

<tr class="odd" >

<td class="view-field view-field-node-title" >任务测试</td >

</tr >

</table >

</div >

</div >

<script language="javascript" type="text/javascript" >

documentgetElementsByClassName = function(_className)

{ //根据class获得对象集合

var aimObj = [];

var elements = documentgetElementsByTagName("") ;//取得所有元素的集合

alert(elementslength);

for(var i=0;i<elementslength;i++)

{

if(elements[i]className==null) continue;

if(elements[i]className == _className)

{

以上就是关于js通过元素class名字获取元素集合的具体实现全部的内容,包括:js通过元素class名字获取元素集合的具体实现、怎样用JS获取CSS中class中的值、jquery 是如何通过 class 来获取元素的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10040518.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存