Node(节点)接口已具有attributes属性,且已被所有类型的节点实现,但实际上只有Element节点才能有特性,Element节点的attributes属性其实质是NamedNodeMap,它提供了用于访问,修改,删除特性的方法和属性:
1、getNamedItem(name):返回特性名等于name的特性节点;
2、setNamedItem(node):添加特性节点;
3、removeNamedItem(name):删除特性名等于name的特性节点;
4、item(pos):返回索引位置的特性节点;
5、length:得到特性节点数量;
特性节点有两个属性:
1、nodeName:或用name也一样,表示特性名;
2、nodeValue:或用value也一样,表示特性值;
假设有这样一个元素
<div id="div1" style="width:200px">
我们用document对象的getElementById方法得到对该对象的引用:
var divnode = document.getElementbyId("div1");
我们可以用以下方法来该问特性的值:
var divattr = divnode.attributes.getNamedItem("id").nodeValue;
var divattr = divnode.attributes.item(0).value;
var divattr = divnode.attributes[0]; //上一方式的简便形式;
还可以通过给nodeValue或value属性赋值来改变特性值:
divnode.attributes.item(0).value = "div2";
上面这些方法太累赘了,dom又定义了三个元素方法来帮助处理特性:
getAttribute(name)等效于attributes.getNamedItem(name).value;
setAttribute(name,newvalue)等效于attributes.getNamedItem(name).value = newvalue;
removeAttribute(name)等效于attributes.removeNamedItem(name);
元素还有一个getAttributeNode(name)方法可以得到一个特性,但不常用;
html的dom还可以使用节点对象的与特性名相同的属性来获取和设置特性:
alert(divnode.id);
alert(divnode.style);
divnode.style = "width:400px";
有两个特性比较特别,一是用于用于指定css类的class特性;二是label元素的for特性;要引用它们分别用htmlFor和className来实现。
把地址用手机拍下来,方便随时查看!
———— 马上加微信联系:15823808970 张老师 ————
沙坪坝校区:
报名联系人:张老师
联系电话:15823808970 023-65316279
联系QQ:869488371
联系地址:重庆市沙坪坝三峡广场广电大厦四楼(王府井旁边)
南坪校区:
报名联系人:张老师
联系电话:17723551922 023-62530792
联系QQ:332334275
联系地址:南坪万达广场2号写字楼6楼11号(南坪轻轨站2号出口右侧)
江北校区:
报名联系人:陈老师
联系电话:18983942570 023-63874645
联系QQ:255678862
联系地址:江北观音桥拓展大厦18楼(新世纪百货后面)
杨家坪校区:
报名联系人:高老师
联系电话:18983940174 023-68612501
联系QQ:1840862932
联系地址:杨家坪轻轨站旁聚彩阁10-4(九龙坡人民医院A区大门正对面)