来自《Javascript DOM编程艺术》那本书。
示例代码如下:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
<title>Shopping List</title>
</head>
<body>
<h1>What to buy</h1>
<p title="a gender remainder">Don't forget to buy this stuff.</p>
<ul id="perchases">
<li>A tin of beans</li>
<li>Cheese</li>
<li>Milk</li>
</ul>
<script type="text/javascript">
alert(typeof document.getElementById("perchases"));
</script>
</body>
</html>
1)getElementById:
在标签中可以设置id属性,使用这个函数会返回与这个id匹配的对象。(DOM中的每个节点都是对象)
2)getElementsByTagName:
返回的是一个数组。(所以Element都是复数。。)参数可以是通配符。例如:
var items=document.getElementsByTagName("*");返回的是包含整个页面上的对象的数组。
3)getAtrribute:
只能通过某个具体的对象调用,无法用document调用,例如:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
<title>Shopping List</title>
</head>
<body>
<h1>What to buy</h1>
<p title="a gender remainder">Don't forget to buy this stuff.</p>
<ul id="perchases">
<li>A tin of beans</li>
<li>Cheese</li>
<li>Milk</li>
</ul>
<script type="text/javascript">
var paras=document.getElementsByTagName("p");
for(var i=0;i<paras.length;i++){
alert(paras[i].getAttribute("title"));
}
</script>
</body>
</html>
运行效果:4)setAtrribute:
修改属性值,setAtrribute(attribute,value),例如:
var paras=document.getElementsByTagName("p");
for(var i=0;i<paras.length;i++){
if(paras[i].getAttribute("title")){
paras[i].setAtrribute("title","a GENDER remainder!!!");
alert(paras[i].getAttribute("title"));
}
}
更改了p标签的title属性,原来的a gender remainder变成了a GENDER remainder!!!
注:
view source后看到的仍然是改动之前的内容,因为DOM先加载静态的文档再动态刷新。