长沙web培训
达内长沙侯家塘中心

15017569023

热门课程

Web前端培训:DOM属性

  • 时间:2016-11-04 17:15
  • 发布:长沙web培训
  • 来源:web教程

长沙Web前端培训的老师今天给大家分享DOM属性。

节点属性:

文档里的每个节点都有以下属性。

nodeName

nodeName属性将返回一个字符串,其内容是给定节点的名字:

name = ode.nodeName

如果给定节点是一个属性节点,nodeName属性将返回这个属性的名字。

如果给定节点是文本节点,nodeName属性将返回一个内容#text的字符串。

nodeName属性是一个只读属性-----只能对他进行查询,不能进行设置

nodeType

nodeType属性将返回一个整数,这个数值代表给定节点类型:

integer = ode.nodeType

nodeType属性有2种,nodeType属性所返回的整数值对应着一下12中节点类型之一:

ELEMENT_NODE

ATTRIBUTE_NODE

TEXT_NODE

CDATA_SECTION_NODED等等

在这12种节点类型中,前三种是最重要的,web上的绝大多数DOM脚本都需要与元素节点、属性节点和文本节点打交道。

nodeType属性通常与if语句配合使用,以确保不会再错误的节点类型上执行无效或非法的操作,在下例中,某个函数只有一个名为mynode的参数,这个参数可以是文档中任何一个元素,这个函数将为该元素添加一个取值为this is important的title属性。在此之前,它先检查mynode参数的nodeType属性,以确保这个参数所代表的节点确实是一个元素节点

function addTitle(mynode) {

if ( mynode.nodeTyoe == 1 ) {

mynode.setAttribute("title","this is important"); 

}

nodeType属性是一个只读属性。

nodeValue

这个属性将返回一个字符串。

如果给定节点是属性节点,nodeValue属性将返回这个属性的值

如果给定的节点是文本节点,nodeValue属性将返回这个文本节点的内容

如果给定节点是一个元素节点,nodeValue属性将返回null

nodeValue属性是一个读/写属性,不过,你不能对已经定义为null的值进行设置。换句话说,不能为元素节点nodeValue属性设置一个值,

下面的例子将不能工作,因为它试图为一个元素节点设置一个值:

var message = document.getElementById("fineprint");

message.nodeValue = " this won`t work ";

下面的例子有可能可以工作,他试图为一个元素节点的第一个节点设置一个值,只要这个第一个节点是文本节点,新值就能设置成功:

var message = document.getElementById("fineprint");

message.firstChild.nodeValue = "this might work";

下面的例子肯定可以工作,这里增加了一项测试检查fineprint元素节点的第一个子节点是否为文本节点:

var message = document.getElementById("fineprint");

if ( message.firstChild.nodeType == 3 ) {

message.firstChild.nodeValue = "this will work";

}

如果需要刷新某个文本节点的值,nodeValue属性提供了最简单机制,如果需要刷新某个属性节点的值,通过这个属性节点的父节点和setAttribute()方法之间的关系。

长沙Web前端培训的老师下一期还会给大家分享其他的知识点,大家不要错过哟。

上一篇:jbox演示不同的调用方法
下一篇:使用keystonejs创建博客

马上预约三天免费体验课

姓名:

电话:

react与redux学习的整理

引用font awesome字体图标

Jquery获得当前标签的名称和标签属性

如何使用grunt压缩js文件

选择城市和中心
贵州省

广西省

海南省