DOM属性
节点属性:
文档里的每个节点都有以下属性。
nodeName
nodeName属性将返回一个字符串,其内容是给定节点的名字:
name = node.nodeName
如果给定节点是一个属性节点,nodeName属性将返回这个属性的名字。
如果给定节点是文本节点,nodeName属性将返回一个内容#text的字符串。
nodeName属性是一个只读属性-----只能对他进行查询,不能进行设置
- nodeType
nodeType属性将返回一个整数,这个数值代表给定节点类型:
integer = node.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()方法之间的关系。
DOM属性的更多相关文章
- 借助JavaScript中的Dom属性改变Html中Table边框的颜色
借助JavaScript中的Dom属性改变Html中Table边框的颜色 -------------------- <html> <head> <title>我是页 ...
- Js位置与大小(1)——正确理解和运用与尺寸大小相关的DOM属性
在web开发中,不可避免遇到要计算元素大小以及位置的问题,解决这类问题的方法是利用DOM提供的一些API结合兼容性处理来,所有内容大概分3篇左右的文章的来说明.本文作为第一篇,介绍DOM提供的与尺寸大 ...
- HTML DOM 属性 对象
HTML DOM 属性 对象 HTML DOM 节点 在 HTML DOM (Document Object Model) 中, 所有的都是 节点: 文档是文档节点 所有 HTML 元素是元素节点 所 ...
- DOM – (w3school)1.DOM 方法 + 2.DOM属性 + 3.DOM 元素
1.DOM 方法 一些 DOM 对象方法 这里提供一些您将在本教程中学到的常用方法: 方法 描述 getElementById() 返回带有指定 ID 的元素. getElementsByTa ...
- JavaScript 节点操作Dom属性和方法(转)
JavaScript 节点操作Dom属性和方法 一些常用的dom属性和方法,列出来作为手册用. 属性: 1.Attributes 存储节点的属性列表(只读) 2.childNodes 存储 ...
- 【Jquery系列】之DOM属性
1 概述 本章将结合JQuery官方API,对Jquery属性进行分析与讲解.主要讲.addClass(),.attr(),,hasClass(),,html(),.prop(),.removeA ...
- JavaScript中易混淆的DOM属性及方法对比
JavaScript中易混淆的DOM属性及方法对比 ParentNode.children VS Node.prototype.childNodes ParentNode.children:该属性继承 ...
- 使用jQuery匹配文档中所有的li元素,返回一个jQuery对象,然后通过数组下标的方式读取jQuery集合中第1个DOM元素,此时返回的是DOM对象,然后调用DOM属性innerHTML,读取该元素 包含的文本信息
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- jQuery 源码分析(十三) 数据操作模块 DOM属性 详解
jQuery的属性操作模块总共有4个部分,本篇说一下第2个部分:DOM属性部分,用于修改DOM元素的属性的(属性和特性是不一样的,一般将property翻译为属性,attribute翻译为特性) DO ...
- DOM属性获取、设置、删除
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
随机推荐
- JS旋转和css旋转
js旋转 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <styl ...
- Docker安装方法整理
目录 安装准备 在线安装 离线安装 Raspbian便捷脚本安装 卸载 安装准备: 卸载旧版本 较旧版本的Docker被称为docker或docker-engine.如果已安装,请卸载它们: sudo ...
- 一 :Mysql基础
1.Mysql初识 三高角度引入 三高:高并发,高可用,高性能. why: 1.1数据文件和程序不应该放在同一台机器上!一旦机器挂了,数据和程序全都挂了不能对外提供服务,高可用性差. 1.2纵向扩展有 ...
- 【XSY2488】【HDU5818】Joint Stacks
这题合并栈让我们想到了左偏树. 我们可以维护val值为时间,dis值为size的左偏树,定义两个根root1和root2,表示两个栈的栈顶,建大根的左偏树. 接下来的插入,删除,两个栈合并都是左偏树的 ...
- C++学习笔记8_零碎的知识
1. int main(void) { int arr[] = {1,2,3,4}; //数组的长度 int len = sizeof(arr)/sizeof(int); //由此可以看出,sizeo ...
- 题解 【洛谷】AT654
题解 AT654 [役人[错题已隐藏]] 此题题面没搬过来, 会日语的dalao可以自行去ATCoder查看. 给出此题的JavaAC代码: public class Main { public st ...
- 安装requests遇到的坑
通过pip install requests命令安装,报错,提示“SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed”.百思不得其解,后 ...
- CSPS模拟 85
WWB大佬的bitset映射真是太强了! %%% T1 观察样例,猜规律. T2 对题目的翻译工作用了很长时间 翻译错了好几次.. 观察到奇环没法染色,选的边必须把奇环弄断 如果在偶环上,偶环就变得没 ...
- NOIP模拟34
考试的时候被T2卡了一年....考虑了一下正解的式子,然后没去给左边分解因数,去给后面乘倍数...理论复杂度O(n^2),实际好像卡不掉的样子.但是由于我智障的打了一棵主席树,他M了.... 预计得分 ...
- permu 莫队 总结
由于每次询问静态区间里完整值域段的最大大小 貌似很好用莫队转移,所以考虑怎么转移 当给它扩展一个数时,就是给值域添加了一个值 这个值可能已经存在,也可能是新的 有的神仙做法是维护了一个并查集,然而我这 ...