getElementBytagname(getelementbytagname的作用)

http://www.itjxue.com  2023-01-26 00:04  来源:未知  点击次数: 

getElementsByTagName和getElementById 的区别

前者是通过标签名来获得当前网页中的元素对象的,而且它返回的是一个数组,因为tag相同的元素可能不止一个这个时候就需要用getElementsByTagName("a")[0](返回第一个元素)来获得对象的引用

而后者是通过元素的id属性来获得当前网页中的元素对象的,由于在一个文档中相同id名称的元素只能有一个,所以它返回的就是一个对象,也就是说可以直接用,只要你在元素中定义了id名称,比如div id="myDiv",这个时候你就可以用document.getElementById("myDiv")来获得这个div对象了。

js使用getElementsByTagName报错怎么办?

getElementsByTagName是document的方法,只能通过document调用。如果你只是想要取得DOM中指定标签名的对象的集合的话document.getElementsByTagName就足够了。

拓展:

1、JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

2、在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语法风格与Self及Scheme较为接近。为了取得技术优势,微软推出了JScript,CEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。为了统一规格,因为JavaScript兼容于ECMA标准,因此也称为ECMAScript。

根据具体问题类型,进行步骤拆解/原因原理分析/内容拓展等。

具体步骤如下:/导致这种情况的原因主要是……

getelementsbytagname什么意思

WEB标准下可以通过getElementById(), getElementsByName(), and getElementsByTagName()访问DOCUMENT中的任一个标签:

1、getElementById()

getElementById()可以访问DOCUMENT中的某一特定元素,顾名思义,就是通过ID来取得元素,所以只能访问设置了ID的元素。

比如说有一个DIV的ID为docid:

div id="docid"/div

那么就可以用getElementById("docid")来获得这个元素。

!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

""

html

head

meta http-equiv="Content-Type" content="text/html; charset=gb2312"

titleById/title

style type="text/css"

!--

#docid{

height:400px;

width:400px;

background-color:#999;}

--

/style

/head

bodydiv id="docid" name="docname" onClick="bgcolor()"/div

/body

/html

script language="JavaScript" type="text/JavaScript"

!--

function bgcolor(){

document.getElementById("docid").style.backgroundColor="#000"

}

--

/script

、getElementsByName()

这个是通过NAME来获得元素,但不知大家注意没有,这个是GET ELEMENTS,复数ELEMENTS代表获得的不是一个元素,为什么呢?

因为DOCUMENT中每一个元素的ID是唯一的,但NAME却可以重复。打个比喻就像人的身份证号是唯一的(理论上,虽然现实中有重复),但名字

重复的却很多。如果一个文档中有两个以上的标签NAME相同,那么getElementsByName()就可以取得这些元素组成一个数组。

比如有两个DIV:

div name="docname" id="docid1"/div

div name="docname" id="docid2"/div

那么可以用getElementsByName("docname")获得这两个DIV,用getElementsByName("docname")[0]访问第一个DIV,用getElementsByName

3、getElementsByTagName()

这个呢就是通过TAGNAME(标签名称)来获得元素,一个DOCUMENT中当然会有相同的标签,所以这个方法也是取得一个数组。

下面这个例子有两个DIV,可以用getElementsByTagName("div")来访问它们,用getElementsByTagName("div")[0]访问第一个DIV,用

getElementsByTagName("div")[1]访问第二个DIV。

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""

html xmlns=""

head

meta http-equiv="Content-Type" content="text/html; charset=gb2312"

titleByname,tag/title

style type="text/css"

!--

#docid1,#docid2{

margin:10px;

height:400px;

width:400px;

background-color:#999;}

--

/style

/head

body

div name="docname" id="docid1" onClick="bgcolor()"/div

div name="docname" id="docid2" onClick="bgcolor()"/div

/body

/html

script language="JavaScript" type="text/JavaScript"

!--

function bgcolor(){

var docnObj=document.getElementsByTagName("div");

docnObj[0].style.backgroundColor = "black";

docnObj[1].style.backgroundColor = "black";

}

--

/script

总结一下标准DOM,访问某一特定元素尽量用标准的getElementById(),访问标签用标准的getElementByTagName(),但IE不支持

getElementsByName(),所以就要避免使用getElementsByName(),但getElementsByName()和不符合标准的document.all[]也不是全无是处,它们有自己的方便之处,用不用那就看网站的用户使用什么浏览器,由你自己决定了。

(责任编辑:IT教学网)

更多

相关其他WEB语言文章

推荐其他WEB语言文章