美文网首页前端开发那些事儿
10-12 | 读JavaScript 高程

10-12 | 读JavaScript 高程

作者: cemcoe | 来源:发表于2020-06-08 21:37 被阅读0次

这一篇呢是第10章到第12章的汇总,DOM 的相关知识,这些东西让 JavaScript 有了操作网页的能力,但像Vue等框架的出现,让开发工作不再直接地操作 DOM,这部分地知识相对会弱化一些,不过一些 API 还是要熟悉一下地。这就是将这几章汇总的原因。

  1. 什么是DOM?
  2. DOM 是用来干什么的?
  3. 如何选取DOM元素?
  4. 如何访问节点的属性?

1. 什么是DOM?

DOM 的全称是 Document Object Model,中文名叫文档对象模型。


来自维基百科

和原型链作用域链有那么些相似。

这种类型或者说是关系是很常见的,比如历史上的中央集权制度。


中央集权制度

以及现在的公司架构也是类型的结构。


公司架构

这种关系在数据结构和算法中有个术语叫做树结构,抽象之后长下面的样子。

树结构
图片来源: https://www.cnblogs.com/QG-whz/p/5168620.html

2. DOM 是用来干什么的?

讲了这么多,那么 DOM 有何用? 有了 MVVM 框架,现在直接操作 DOM 的地方确实是少了,取而代之的是通过控制数据来改变页面的视图层。所以这里也不多介绍。

3.如何选取DOM元素?

选择使用

  • querySelector()
  • querySelectorAll()

书中还提到一个方法叫做 matchesSelector(),但搜索一下可以发现,这个东西被改成了 matches()。所以看这本书时还是要小心一点的,有些东西已经随着时间发生了改变。没什么能躲过时间的摧残。

综上,选取元素可以使用 querySelector() querySelectorAll() matches(),具体用法自行探索。

matches

H5

元素选取相关:

  • getElementsByClassName()
  • getElementById()

对类的增删改查

  • add
  • contains
  • remove
  • toggle

4. 如何访问节点的属性?

对于连字符的属性名转换成驼峰命名。

// 访问
const color = demo.style.backgroundColor

// 修改
demo.style.backgroundColor = '#f40'

当然了,一般很少直接使用 js 修改样式值,这样的需求一般是通过切换 class 名实现的。因为直接使用 js 修改样式,js 和 css 代码会混杂在一起,不符合结构行为样式相分离的规范。

接下来是元素尺寸相关的问题。和 BOM 尺寸放在一起有空看。

好嘞,就这些。

相关文章

  • 10-12 | 读JavaScript 高程

    这一篇呢是第10章到第12章的汇总,DOM 的相关知识,这些东西让 JavaScript 有了操作网页的能力,但像...

  • 05 | 读JavaScript 高程

    这是第五章引用类型,这一章涉及引用类型的种类,各个类型身上的方法等相关内容。 主要知识点: 1.引用类型和类和对象...

  • 01 | 读 JavaScript 高程

    缘起 总感觉自己前端的知识体系不是很系统,打算读一下这本很多人推荐的书,从目录来看第三版有些东西在2020年可能已...

  • 02 | 读 JavaScript 高程

    今天来瞧一瞧第二章在 HTML中使用 JavaScript script 标签属性的变化 首先是 script 标...

  • 03 | 读JavaScript 高程

    这是第三章基本概念,这一章涉及变量,操作符,语句和函数等相关内容。 主要的知识点: ECMAScript 中究竟有...

  • 06 | 读JavaScript 高程

    这是第六章面向对象的程序设计,这一章涉及到一些概念和思想,也是 JavaScript 中很重要的知识点。需要注意的...

  • 04 | 读JavaScript 高程

    这是第四章基本概念,这一章涉及变量、作用域和内存问题等相关内容。主要知识点: 值类型和引用类型的区别是什么? 如何...

  • 08 | 读JavaScript 高程

    这一篇呢是第8章,主要涉及 BOM 的相关知识。 先来看BOM,即和浏览器相关地一些东西。 知识点:1.BOM 中...

  • 07 | 读JavaScript 高程

    这是第七章函数表达式,这一章涉及函数预编译,闭包,作用域链内容。函数涉及内容繁多。 前情提要 02-1 | 读Ja...

  • 13 | 读JavaScript 高程 | 事件

    这一篇呢是第13章,内容是和事件相关。 事件可以看成是条件判断的一种条件,逻辑是某个元素发生了某个事情,我要做出相...

网友评论

    本文标题:10-12 | 读JavaScript 高程

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