javascript 节点属性详解

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

DOM 是这样规定的:
整个文档是一个文档节点
每个 html 标签是一个元素节点
包含在于 html 元素中的文本是文本节点
每一个 html 属性是一个属性节点
注释属于注释节点

1. 获得节点的引用
   A. 旧的获得节点引用方式
      getElementById()/getElementsByTagName()/getElementsByName()
      劣势:浪费内存,逻辑性不强

B. 通过节点 关系属性 获得节点的引用
      对象.parentNode 获得父节点的引用
      对象.childNodes 获得子节点的集合
      对象.firstChild 获得第一个子节点
      对象.lastChild  获得最后一个子节点
      对象.nextSibling 获得下一个兄弟节点的引用
      对象.previousSibling  获得上一个兄弟节点的引用
    劣势:兼容性不好,原因是IE会把最后一个标签换行当做一个节点,FF把所有标签换行都

当成了节点,排除这些方法和差异可用
obj.nodeType == 3 && /^\s+$/.test(obj.nodeValue)
 
2.节点的信息(属性)

 
* 节点类型(nodeType(数值)) 节点名字(nodeName) 节点值(nodeValue)
元素节点 1 标签名 null
属性节点 2 属性名 属性值
文本节点 3 #text 文本
注释节点 8 #comment 注释的文字
文档节点 9 #document null

javascript 节点属性详解的更多相关文章

  1. JavaScript constructor 属性详解

    对象的constructor属性用于返回创建该对象的函数,也就是我们常说的构造函数. 在JavaScript中,每个具有原型的对象都会自动获得constructor属性.除了arguments.Enu ...

  2. Javascript中prototype属性详解 (存)

    Javascript中prototype属性详解   在典型的面向对象的语言中,如java,都存在类(class)的概念,类就是对象的模板,对象就是类的实例.但是在Javascript语言体系中,是不 ...

  3. JavaScript对象的property属性详解

    JavaScript对象的property属性详解:https://www.jb51.net/article/48594.htm JS原型与原型链终极详解_proto_.prototype及const ...

  4. [转]javascript console 函数详解 js开发调试的利器

    javascript console 函数详解 js开发调试的利器   分步阅读 Console 是用于显示 JS和 DOM 对象信息的单独窗口.并且向 JS 中注入1个 console 对象,使用该 ...

  5. JavaScript(2)---DOM详解

    JavaScript(2)---DOM详解 一.DOM概念 什么是DOM DOM全称为文本对象模型(Document Object Model),它定义了所有HTML元素的对象和属性,以及访问他们的方 ...

  6. 从mixin到new和prototype:Javascript原型机制详解

    从mixin到new和prototype:Javascript原型机制详解   这是一篇markdown格式的文章,更好的阅读体验请访问我的github,移动端请访问我的博客 继承是为了实现方法的复用 ...

  7. OutputCache属性详解(一)一Duration、VaryByParam

    目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...

  8. OutputCache属性详解(三)— VaryByHeader,VaryByCustom

    目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...

  9. OutputCache属性详解(四)— SqlDependency

    目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...

随机推荐

  1. JQuery简单实现锚点链接的平滑滚动

    在平时的项目中,我们经常需要一些特效链接,如果使效果进一步加强,我们可以使点击锚点链接平滑滚动到锚点,下面就来给大家讲解下如何使用jQuery来实现.   一般使用锚点来跳转到页面指定位置的时候,会生 ...

  2. js showModalDialog打开新的页面给原页面传值问题

    a.html中打开一个新页面b.html,b.html页面给a.html中的input传一个值并将value赋给input框. a.html: <html>  <head>   ...

  3. 机房收费系统(VB.NET)——存储过程实战

    最初接触存储过程是在耿建玲老师的视频里,当初仅仅是草草过了一遍.仅仅是有了个印象.知道了这个名词:大二时也有SqlServer数据库这门课,只是老师没讲,自己也没看:真正对存储过程的了解来自于自学考试 ...

  4. [React] Using the classnames library for conditional CSS

    Classnames is a simple yet versatile javascript utility that joins CSS class names based on a set of ...

  5. AIDL-Android接口描述语言实现跨进程通讯

    在Android中, 每个应用程序都可以有自己的进程. 在写UI应用的时候, 经常要用到Service. 在不同的进程中, 怎样传递对象呢? 显然, Java中不允许跨进程内存共享. 因此传递对象, ...

  6. 鼠标移动事件--JavaScript

    鼠标移动事件 <html> <head> <title>鼠标移动事件</title> </head> <style type=&quo ...

  7. Cookie中的三个容器request,session,application的设置和获取

    public class SaveServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpSer ...

  8. fuck'em

    不要说GUNGHO的游戏,连逆转三国这种都没玩过,还是做手游的,表现的那么冠冕堂皇,还不只是个常规的做软件的而已.只是以做软件的程度来做游戏,能做出的是个JB.

  9. Linux性能实时监测工具netdata安装配置

    netdata:功能强大的实时性能检测工具,展示地址. github地址:https://github.com/firehol/netdata 本文介绍在CentOS 6.7下安装netdata 1. ...

  10. 华为RH8100V3RAID 10配置

    a)华为RH8100V3RAID 10配置 1)开机按照提示按Ctrl+H键进入RAID卡WEBBIOS管理界面: 2)选中“Start”回车,进入RAID卡管理配置界面: 3)移动鼠标到 “conf ...