美文网首页
js dom操作

js dom操作

作者: Viewwei | 来源:发表于2020-11-10 19:42 被阅读0次

1.客户端检测
1.1客户端检测主要包括浏览器的识别和操作系统的识别
navigator.oscpu 检测操作系统
navigator.vendor 检测开发商信息
navigator.platform 检查浏览器所在的操作系统
screen.colorDepth 和screen.pixelDepth检查像素的位深
2 dom操作
document节点表示问个文档的根节点,根节点唯一的子节点是HTML元素,也叫做文档节点。
2.1Node类型
HTML中所以的节点都集成Node类型,每个节点都有自己的nodeType。用来表示节点的类型。node类型一共有12中类型

节点类型    描述  子节点
1   Element 代表元素    Element, Text, Comment, ProcessingInstruction, CDATASection, EntityReference
2   Attr    代表属性    Text, EntityReference
3   Text    代表元素或属性中的文本内容。  None
4   CDATASection    代表文档中的 CDATA 部分(不会由解析器解析的文本)。   None
5   EntityReference 代表实体引用。 Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference
6   Entity  代表实体。   Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference
7   ProcessingInstruction   代表处理指令。 None
8   Comment 代表注释。   None
9   Document    代表整个文档(DOM 树的根节点)。  Element, ProcessingInstruction, Comment, DocumentType
10  DocumentType    向为文档定义的实体提供接口   None
11  DocumentFragment    代表轻量级的 Document 对象,能够容纳文档的某个部分  Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference
12  Notation    代表 DTD 中声明的符号。  None

每个Node类型的节点都有nodeName nodelValue保存相关的节点的信息。在使用这两个属性之前,最好判断一下当前节点是不是元素。nodeName表示节点的标签名。
每个节点都有childNodes属性。得到一个NodeList实例对象。该对象是一个类数组。NodelList是一个动态对象,它包含的字节发生变化,Node对象都会发生变化。每个节点都还有previousSibling和nextSibling属性。previousSibling表示当前节点的上个节点。nextSibling表示当前节点的下一个节点。firstChild表示NodelList的第一个节点。lastChild表示NodelList表示最后一个。
DOM为操作节点提供了appendChild方法。appendChild表示插入当前节点尾部。insertBefor方法表示插入到目标节点的前面。replaceChild表示替换目标节点。removeChild表示删除一个节点
3 Document类型
Document类型的nodeType为9 nodeName="#document"
document保存着文档的信息。比如document.domain 客户端的域名 document.URL保存的是客户端的URL
Document同时保存着节点的定位元素。比如document.getElementById("")。如果id不存在,返回Null。document.getElementByTagName()。参数为标签名,返回一个NodelList对象。如果给标签指定了name属性。NodelList可以通过nameItem获取到指定Node节点。
document还保存着特殊的集合。比如document.anchors 表示所有带name属性的a标签。。。
4 Element类型
Elemnt类型的NodeType为1 nodeType值为元素的标签名称。Element类型的nodeName和tagName一致
5 HTML元素
HTML元素拥有很多标准的属性。比如 id title lang dir clasName。这些属性可以通过getAttribute()获取属性的值。setAttribute()设置属性的值,也可以设置一些自定的属性,removeAttribute()删除属性。HTML元素可以使用attributes属性,获取到一个类型NodeList的集合NameNodeMap。NameNodeMap有3个方法 getNamedItem,返回nodeNmae属性等于name的节点。removeNameItem 删除nodeName属性等于name的节点。setNamedItem(node),向列表中添加node节点。使用document.createElement方法创建元素
6 Text类型
Text类型nodeType为3

相关文章

  • 前端发展历史

    1.js操作html 利用原生的javascript (js包括ECMAscript BOM DOM)的DOM操作...

  • JS第七天-03

    DOM DOM树结构关系代码示例: 一、JS中标签关系 二、JS操作页面标签 三、JS操作DOM一般步骤 1、创建...

  • 028 DOM

    DOM 一、JS中标签关系 二、JS操作页面标签 三、JS操作DOM一般步骤 1、创建标签 2、设置标签样式文本 ...

  • 面试中React与Vue的比对 / 面试/mvvm/virtua

    1.virtual dom 用JS模拟DOM结构,DOM变化的对比,放在JS层做,以提高重绘性能 DOM操作昂贵,...

  • web自动化_dom

    js不能直接操作html元素,比如要修改元素的样式,需要通过dom对象操作html元素js ->dom对象->调用...

  • 常用DOM操作

    前言 很多同学用惯了jquery操作dom,让他们用js操作的时候,常常力不从心,本文总结了常用的js的dom操作...

  • react基础入门:(二)原生JS操作DOM元素

    原文链接:react基础入门:(二)原生JS操作DOM元素 一 初始化项目 二 操作 DOM 获取 dom 元素 ...

  • React填坑

    Virtual Dom 在浏览器环境下,DOM操作远比JS操作开销大,且项目越复杂,DOM操作的开销越大,为了提升...

  • 2.JavaScript优化-DOM

    DOM优化 一、DOM与JavaScript 浏览器会把DOM与js独立实现-像两个独立的小岛 js操作dom-从...

  • JS异步编程

    为什么JS需要异步?JS语言设计之初,是为了能够操作浏览器DOM元素,为避免两个线程同时操作某DOM元素导致DOM...

网友评论

      本文标题:js dom操作

      本文链接:https://www.haomeiwen.com/subject/bggjbktx.html