1、getElementById() getElementById()可以訪問(wèn)DOCUMENT中的某一特定元素,顧名思義,就是通過(guò)ID來(lái)取得元素,所以只能訪問(wèn)設(shè)置了ID的元素。 比如說(shuō)有一個(gè)DIV的ID為docid: <div id="docid"></div> " /> 日本高清久久一区二区三区,91久久嫩草影院一区二区,日韩伦理在线一区

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

getElementByID、createElement、appendChild幾個(gè)DHTML元素第1/2頁(yè)

DOCUMENT中的任一個(gè)標(biāo)簽: 

1、getElementById()
getElementById()可以訪問(wèn)DOCUMENT中的某一特定元素,顧名思義,就是通過(guò)ID來(lái)取得元素,所以只能訪問(wèn)設(shè)置了ID的元素。
比如說(shuō)有一個(gè)DIV的ID為docid:
<div id="docid"></div>
那么就可以用getElementById("docid")來(lái)獲得這個(gè)元素。


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>ById</title>
<style type="text/css">
<!--
#docid{
height:400px;
width:400px;
background-color:#999;}
-->
</style>
</head>
<body><div 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()
這個(gè)是通過(guò)NAME來(lái)獲得元素,但不知大家注意沒(méi)有,這個(gè)是GET ELEMENTS,復(fù)數(shù)ELEMENTS代表獲得的不是一個(gè)元素,為什么呢?
因?yàn)镈OCUMENT中每一個(gè)元素的ID是唯一的,但NAME卻可以重復(fù)。打個(gè)比喻就像人的身份證號(hào)是唯一的(理論上,雖然現(xiàn)實(shí)中有重復(fù)),但名字

重復(fù)的卻很多。如果一個(gè)文檔中有兩個(gè)以上的標(biāo)簽NAME相同,那么getElementsByName()就可以取得這些元素組成一個(gè)數(shù)組。

比如有兩個(gè)DIV:
<div name="docname" id="docid1"></div>
<div name="docname" id="docid2"></div>
那么可以用getElementsByName("docname")獲得這兩個(gè)DIV,用getElementsByName("docname")[0]訪問(wèn)第一個(gè)DIV,用getElementsByName


3、getElementsByTagName()
這個(gè)呢就是通過(guò)TAGNAME(標(biāo)簽名稱(chēng))來(lái)獲得元素,一個(gè)DOCUMENT中當(dāng)然會(huì)有相同的標(biāo)簽,所以這個(gè)方法也是取得一個(gè)數(shù)組。
下面這個(gè)例子有兩個(gè)DIV,可以用getElementsByTagName("div")來(lái)訪問(wèn)它們,用getElementsByTagName("div")[0]訪問(wèn)第一個(gè)DIV,用

getElementsByTagName("div")[1]訪問(wèn)第二個(gè)DIV。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Byname,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>
總結(jié)一下標(biāo)準(zhǔn)DOM,訪問(wèn)某一特定元素盡量用標(biāo)準(zhǔn)的getElementById(),訪問(wèn)標(biāo)簽用標(biāo)準(zhǔn)的getElementByTagName(),但I(xiàn)E不支持

getElementsByName(),所以就要避免使用getElementsByName(),但getElementsByName()和不符合標(biāo)準(zhǔn)的document.all[]也不是全無(wú)是處,它

們有自己的方便之處,用不用那就看網(wǎng)站的用戶(hù)使用什么瀏覽器,由你自己決定了。

  Javascript中的getElementById十分常用,但在標(biāo)準(zhǔn)的頁(yè)面中,一個(gè)id只能出現(xiàn)一次,如果我想同時(shí)控制多個(gè)元素,例如點(diǎn)一個(gè)鏈接, 讓多個(gè)層隱藏,該怎么做?用class,當(dāng)然,同一個(gè)class是可以允許在頁(yè)面中重復(fù)出現(xiàn)的,那么有沒(méi)有g(shù)etElementByClass呢?沒(méi)有, 但是可以解決: 

//Create an array 
var allPageTags = new Array(); 

function hideDivWithClasses(theClass) {
//Populate the array with all the page tags
var allPageTags=document.getElementsByTagName("div");
//Cycle through the tags using a for loop
for (i=0; i//Pick out the tags with our class name
if (allPageTags[i].className==theClass) {
//Manipulate this in whatever way you want
allPageTags[i].style.display='none';
}
}
}
=============================

JavaScript技術(shù)getElementByID、createElement、appendChild幾個(gè)DHTML元素第1/2頁(yè),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 道真| 曲阜市| 西吉县| 建瓯市| 繁昌县| 仪陇县| 塘沽区| 长岭县| 无棣县| 金门县| 溧阳市| 德安县| 普陀区| 广西| 青神县| 宜兰市| 旬阳县| 星子县| 黔西县| 贵州省| 宁化县| 商河县| 田东县| 成都市| 五家渠市| 土默特右旗| 章丘市| 白银市| 泸西县| 新田县| 蚌埠市| 武穴市| 通化市| 永靖县| 临海市| 兴国县| 当阳市| 九龙县| 肥乡县| 河津市| 延吉市|