Element和Attr节点

Element节点为元素节点,对应着html页面中具体的标签html

nodeType为1node

nodeName为相应的标签的名spa

nodeValue为nullhtm

Attr为特性节点,对应着每一个标签中的属性,它是一个节点,可是不存在于DOM的节点树当中对象

nodeType为11ci

nodeName为属性的名称rem

nodeValue为属性具体的值get


<div class="abc" id="_id" dir="ltr" title="_title"></div>it

上面一段代码定义了div的 class(在js中调用class元素时要使用className)dir(从左到右仍是从右到左)title等属性class

当获得div对象后,假设对象名为div

1 能够获得

  div.className 

  div.id

  div.dir

  div.title

  能够获得这些属性的值

  同时能够对这些属性的值进行修改

  同时也能够添加属性

  例如div.align="center"

  alert(div.id)

  div.id="a"

2 setAttribute():能够修改属性的值,也能够添加属性

   例如div.setAttribute("id","abc")

         div.setAttribute("other","kkk")//本身增长的属性

         div.setAttribute("align",“center”)//增长div具备的属性

   getAttribute():获得属性的值,便可以获得系统具备的属性的值,也能够获得本身定义的属性的值

   div.getAttribute("id")//获得_id

   removeAttribute() 删除属性 

3attributes属性

  每一个元素都有attributes属性,每一个attributes属性有

  getNamedItem()

  setNamesItem()

  removeNamedItem()

  Item()

  四个方法

  还有一个length属性,表明属性的个数

  getNamedItem():获得某一个属性的节点

  div.attributes.getNamedItem("id")//返回id属性的节点   也能够写成div.attributes["id"]

  div.attributes.getNamedItem("id").nodeValue//获得id属性的值,_id

  setNamedItem():为元素添加属性

  div.attributes.getNamedItem(newAttr)//newAttr为新建立的元素,添加到了div中

  removeNamedItem():删除属性

  div.attributes.removeNamedItem("id")//删除了id属性

  item():获得某一位置的属性

  div.attributes.item(2)//获得第三个,即dir属性 也能够写成div.attributes[2]

  div.attributes.length 获得属性的个数

  attributes属性是和NodeList同样动态变化的,即每增长一个属性,会立刻在attributes.length中获得反映

  每一个属性都有specified属性,为Boolen属性,若是为真,代表这个属性是在元素中定义了或者用js的方法添加到元素中了

                                                             若是为假,则说明没有这个元素

  attributes主要用于属性的遍历

  var arr=new Array();

  for(var i=0,var len=div.attributes.length;i<len;i++)

  { 

     if(div.attributes[i].specified)

      {

         arr.push(div.attributes[i].nodeValue);

      }

  }

Attr节点

1它有三个属性

 name:属性节点的名,至关于nodeName

 value:属性节点的值,至关于nodeValue

 specified:该属性节点是否被添加到了标签中

 例如上面的div.attributes[i]就是一个属性节点

 能够获取他的name,value,specified

 它有两个方法

 createAttribute():建立节点

 setAttributeNode();将建立的节点添加到元素中

 var ali=document.createAttribute("align")//建立了一个align属性节点

 align="center"//为属性节点赋值

 div.setAttributeNode(ali)//将属性节点添加到div中

相关文章
相关标签/搜索