1. 简介

DOM(Document Object Mode)是一套web标准,地那一了访问HTML文档的一套属性、方法和事件

其本质:

  网页 与 脚本语言 沟通的桥梁

  脚本语言通过DOM对象来访问HTML页面,从而改变文档的结构、样式和内容。

  当浏览器载入HTML文档时,他就会称谓document对象树。

2. DOM对象

(1)文档对象:整个HTML文档

(2)节点对象:所有的HTML元素都是元素节点

(3)属性对象:依附于元素节点,所有节点的属性都是节点

(4)文本对象:文本插入到HTML元素是文本节点

3. 查找元素

(1)元素的id属性

  document.getElementsById(元素id值)

  Id唯一,返回唯一元素

(2)元素的class属性

  documenr.getElementsByClassName(元素class值)

  返回值为一个元素列表

(3)元素的标签名

  document.getElementsByTagName(标签名)

  返回值为一个元素列表

(4)css选择器

  查找一个元素:document.querySelector(css 表达式)

  查找多个元素:document.querySelectorAll(css 表达式)

  在css选择器中,#表示元素的id  .表示元素的class属性

4. 获取和修改元素属性

(1)获取元素属性

  document.getElementByXXX("").属性名

  document.getElementByXXX("")。getAttribute(属性名)

(2)修改元素属性

  document.getElementByXXX("").属性名 = 属性值

  document.getElementByXXX("").setAttribute(属性名,属性值)

5. 获取和修改元素的内容

(1)获取元素内容

  document.getElementByXXX("").innerHTML    包括HTML标签

  document.getElementByXXX("").innerText  不包括标签,纯文本

(2)修改元素内容

  document.getElementByXXX("").innerHTML = new HTML    包括HTML标签

  document.getElementByXXX("").innerText = new Text 不包括标签,纯文本

6. 修改样式

  document.getElementByXXX("").style.样式名=样式值

Web - DOM的更多相关文章

  1. Web | DOM基本操作

    基本概念 文档对象模型 (DOM) 是HTML和XML文档的编程接口.它提供了对文档的结构化的表述,并定义了一种方式可以使程序对该结构进行访问,从而改变文档的结构,样式和内容.DOM 将文档解析为一个 ...

  2. web dom api中的Selection和Range

    如果你做过wysiwyg这样的app,一个很让人头疼的问题是如何保证执行bold,italic等格式化操作后保持先前鼠标所在的位置.要好好的解决这个问题,就必须将Selection和Range的api ...

  3. proxy 利用get拦截,实现一个生成各种DOM节点的通用函数dom。

    const dom = new Proxy({}, { get(target, property) { return function(attrs = {}, ...children) { const ...

  4. DOM,浏览器,javascript,html之间的关系

    来源于:https://github.com/hucheng91/myBlog/blob/master/web/dom/dom.md DOM定义 DOM可以以一种独立于平台和语言的方式访问和修改一个文 ...

  5. 实例讲解react+react-router+redux

    前言 总括: 本文采用react+redux+react-router+less+es6+webpack,以实现一个简易备忘录(todolist)为例尽可能全面的讲述使用react全家桶实现一个完整应 ...

  6. javascript组成概述认识

    这里的JavaScript组成概述是说的在浏览器端渲染的JavaScript而不是nodejs js组成概述 js的完整实现是由ECMAscript.DOM.BOM三个部分组成的: -ECMAscri ...

  7. ES6 Proxy和Reflect (上)

    Proxy概述 Proxy用于修改某些操作的默认行为,等同于在语言层面做出修改,所以属于一种"元编程"(meta programming),即对编程语言进行编程. Proxy可以理 ...

  8. 11.Proxy

    Proxy Proxy 概述 Proxy 用于修改某些操作的默认行为,等同于在语言层面做出修改,所以属于一种"元编程"(meta programming),即对编程语言进行编程. ...

  9. ES6的新特性(21)——Proxy

    Proxy 概述 Proxy 用于修改某些操作的默认行为,等同于在语言层面做出修改,所以属于一种“元编程”(meta programming),即对编程语言进行编程. Proxy 可以理解成,在目标对 ...

随机推荐

  1. AngularJS(二):ng-app指令、表达式

    本文也同步发表在我的公众号“我的天空” ng-app指令 AngularJS指令是扩展的HTML属性,所有指令均带有前缀“ng-”,我们学习的第一个指令便是ng-app,其定义了AngularJS管理 ...

  2. 获取url的参数值

    var url=location.search; //获取url中从?开始的所有字符 var  theRequest=new Object();//定义一个对象来存放url中的参数 if( url.i ...

  3. str中的join方法,fromkeys(),set集合,深浅拷贝(重点)

    一丶对之前的知识点进行补充 1.str中的join方法.把列表转换成字符串 # 将列表转换成字符串,每个元素之间用_拼接 s = "_".join(["天",& ...

  4. python-day1作业(感谢视频老师留的作业)

    __author__ = 'zht' #!/usr/bin/env python # -*- coding: utf-8 -*- ''' #努力学习每一天 ''' #尝试次数计数器 tries = 0 ...

  5. so文件动态加载注意事项

    动态加载是指将so文件存放于服务器,在需要用的时候,通过服务器下载到本地,然后加载. 需要注意的: 手机cpu架构,不同的架构运行不同的so 解决方法: 1,欺骗性: 如果so架构不全,就在apk打包 ...

  6. JFinal教程:JFinal极速开发企业实战百集JFinal视频教程发布

    课程名称:JFinal极速开发企业实战 课程长度:100课时 课程作者:小木(909854136) 课程地址:http://edu.csdn.net/course/detail/1968 官网网址:h ...

  7. MySQL memory引擎 table is full 问题处理

    解决mysql的内存表“table is full”错误   101209 13:13:32 [ERROR] /usr/local/mysql/bin/mysqld: The table ‘test_ ...

  8. C语言中字符串数组的遍历和比较

    /* The list of known types of default packet. */static char  *_default_packet_types[] = {    "d ...

  9. Bot Framework:Activity类简明指南

    Bot Framework相关文档:https://docs.botframework.com/en-us/csharp/builder/sdkreference/attachments.html B ...

  10. UVA 11214 Guarding the Chessboard 守卫棋盘(迭代加深+剪枝)

    暴力,和八皇后很像,用表示i+j和i-j标记主对角线,但是还是要加一些的剪枝的. 1.最裸的暴搜 6.420s,差点超时 2.之前位置放过的就没必要在放了,每次从上一次放的位置开始放 0.400s # ...