javascript-节点属性详解

根据 DOM,HTML 文档中的每个成分都是一个节点。

DOM 是这样规定的:

整个文档是一个文档节点
每个 HTML 标签是一个元素节点
包含在 HTML 元素中的文本是文本节点
每一个 HTML 属性是一个属性节点
注释属于注释节点

一、如何获得节点引用

  1.旧的获取节点引用方式
    getElementById()
    getElementByTagName()  //获取的是HTML中的所有标签,返回的顺序是它们在文档中的顺序
    getElementByName()    //Name属性不唯一,所以该方法返回的是元素的数组,而不是一个元素

劣势:
  1.浪费内存
  2.逻辑性不强

2.通过节点 关系属性 获得节点的引用
    elementNode.parentNode   // 获得父节点的引用
    elementNode.childNodes   //获得子节点的集合
    elementNode.firstChild   // 获得第一个子节点
    elementNode.lastChild   // 获得最后一个子节点\
    elementNode.nextSibling   //获得下一个兄弟节点的引用
    elementNode.previousSibling   //获得上一个兄弟节点的引用

    elementNode.offsetParent    //用来获取该对象定位的那个父元素

劣势:兼容性不好。

二、节点的信息(属性)

    节点类型 节点名字 节点值
    nodeType(数值) nodeName nodeValue

    元素节点 1 标签名 null
    属性节点 2 属性名 属性值
    文本节点 3 #text 文本
    注释节点 8 #comment 注释的文字
    文档节点 9 #document null

三、兼容性的方法

    /^\s+$/

    javascript-节点的增、删、改、查实例讲解

一、创建节点

1>创建元素节点
    document.createElement("元素标签名");
2>创建属性节点
    document.createAttribute("属性名");
    对象.属性="属性值"
    对象.setAttribute(属性名,属性值) 
    对象.getAttribute(属性名,属性值)

3>创建文本节点
    对象.innerHTML="";
    document.createTextNode("文本");

二、追加到页面当中

    父对象.appendChild(追加的对象) 插入到最后
    父对象.insertBefore(要插入的对象,之前的对象) 插入到最后

三、修改(替换)节点

    父对象.replaceChild(要修改的对象,被修改的);

四、删除节点

    父对象.removeChild(删除的对象)
    如果确定要删除节点,最好也清空内存 对象=null;

JSDOM之节点的更多相关文章

  1. js---DOM元素节点

    创建新的 HTML 元素如需向 HTML DOM 添加新元素,您必须首先创建该元素(元素节点),然后向一个已存在的元素追加该元素. 实例1: <!DOCTYPE html> <htm ...

  2. js----DOM的三大节点及部分用法

    DOM有三种节点:元素节点.属性节点.文本节点. 一.用nodeType可以检测节点的类型 节点类型 nodeType属性值 元素节点 1 属性节点 2 文本节点 3 这样方便在js中对各个节点进行操 ...

  3. 原生JSdom节点相关(非原创)

    节点属性 Node.nodeName //返回节点名称,只读 Node.nodeType //返回节点类型的常数值,只读 Node.nodeValue //返回Text或Comment节点的文本值,只 ...

  4. JS-DOM ~ 03. 子节点的操作、style.样式和属性、dom元素的创建方法及操作、14个例题、主要是利用js直接控制html属性

    带有Element和不带的区别 a)  带Element的获取的是元素节点 b)  不带可能获取文本节点和属性节点 获取所以子节点 a)   . childNodes b)   . children ...

  5. JSDOM获取子节点的一些方法

    一般情况获取子节点,通过找到查找父节点的ID或者class类名,来获取父节点,再通过children属性,得到子节点的数组: 之前在另外一篇随笔中说过,如果使用另一个属性childNode,会把注释. ...

  6. JS-DOM ~ 02. 隐藏二维码、锁定、获取输入框焦点、for循环为文本赋值、筛选条件、全选和反选、属性的方法操作、节点的层次结构、nodeType

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. JS-DOM基础

    1     JS-DOM 全称:document object model 1.1 获取页面元素 getElementsByTagName():无论元素的数量是多少,都会存入数组 getElement ...

  8. JAVAscript学习笔记 jsDOM 第五节 (原创) 参考js使用表

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. JS-DOM Element方法和属性

    JS-DOM Element方法和属性 S-DOM Element方法和属性一,获取html元素1.getElementByID(id)通过对元素的ID访问,这是DOM一个基础的访问页面元素的方法.e ...

随机推荐

  1. Magento输入正确的登陆名和密码无法进入后台

    请找到 这个文件夹: app\code\core\Mage\Core\Model\Session\Abstract 然后修改Varien.php这个文件: 找到代码(大约88行): $cookiePa ...

  2. 浅析Netty的异步事件驱动(一)

    本篇文章着重于浅析一下Netty的事件处理流程,Netty版本为netty-3.6.6.Final. Netty定义了非常丰富的事件类型,代表了网络交互的各个阶段.并且当各个阶段发生时,触发相应的事件 ...

  3. HDU4276 - The Ghost Blows Light(树形DP)

    题目大意 给定一棵n个结点的树,每个结点上有一定数量的treasure,经过每条边需要花一定的时间,要求你从结点1出发,在不超过时间T的情况下,最多能够获得的treasure是多少,并且要求结束于结点 ...

  4. Android实例-退出程序(XE8+小米2)

    unit Unit1; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Var ...

  5. A Tour of Go Interfaces

    An interface type is defined by a set of methods. A value of interface type can hold any value that ...

  6. Asp.Net底层解析

    写的很好的一篇文章,但由于不能转载 所以把链接发在这里,以方便自己以后看 http://blog.csdn.net/mlcactus/article/details/8564347 http://ji ...

  7. gtest框架使用

    gtest文档说明: 由于公司单元测试的需要,自己花了大半天时间下载了一个gtest框架,使用了一些测试例子,总览了coderzh的玩转gtest测试框架,又看了几篇gtest博客,写下了以下内容,作 ...

  8. hdu 4607 (树形DP)

    当时比赛的时候我们找出来只要求出树的最长的边的节点数ans,如果要访问点的个数n小于ans距离直接就是n-1 如果大于的话就是(n-ans)*2+ans-1,当时求树的直径难倒我们了,都不会树形dp ...

  9. Android v4 包和v7包问题

    昨天新建了一个android项目,加入了一个bootstrap的外部依赖和一个底部导航栏的外部依赖.结果jj 了,老是提醒我v4包v7包冲突: 事实是这样的,首先我的底部导航依赖库里面有一个v4包,那 ...

  10. PostgreSQL的 create index concurrently

    对于PostgreSQL的 "create index concurrently". 我个人认为其中存在一个bug. 我的验证过程如下: 我有两个表,tab01和 tab02,这两 ...