介绍

JavaScript DOM编程艺术(第2版)主要讲述了 JavaScript、DOM 和 HTML5 的基础知识,着重讲述了 DOM 编程,并通过几个实例演示了具有专业水准的网页开发。

下面介绍一下各章节的讲到的内容。

第1章 JavaScript简史

本章主要讲解JavaScript的发展简史、不同的浏览器会采用不同的办法来完成一样的任务,这会影响JavaScript的发展,而DOM标准化,让这种情况有所改变。而本书要讲的就是JavaScript和DOM一起完成的任务,不需要讨论浏览器。

第2章 JavaScript语法

本章主要是在使用DOM之前,学习一下JavaScript语法。主要是讲解语法(语句/注释/变量/数据类型/数组/对象/)、用于计算和处理数据的操作符、使用if/if-else/if-else if-...-else的条件语句、循环语句、函数等在下面能用到的语法。

第3章 DOM

本章主要讲解 DOM 由文档、对象和模型三者组成,和三者在其中表达的意思。还有 DOM 提供了五个方法,用于操作DOM模型:getElementById/getElementsByTagName/getElementByClassName/getAttribute/setAttribute。除了上述的这些,还提供了许多其它的属性和方法,如 nodeName/nodeValue/childNodes/nextSibling/parentNode等。

第4章 案例研究:JavaScript图片库

本章介绍了一个简单的 JavaScript 应用案例,和 DOM 提供的几个新属性:childNodes/nodeType/nodeValue/firstChild/lastChild。重点就是如何利用DOM提供的方法去编写图片库脚本和如何利用事件处理函数把JavaScript代码与网页集成在一起。

第5章 最佳实践

本章介绍了一些与 DOM 脚本编程工作有关的概念和实践,如平稳退化、分离JavaScript、向后兼容和性能考虑。

第6章 案例研究:图片库改进版

本章主要是对上述案例的图片库进行多项优化,将HTML标记变得更加整齐。还提供一个基本的 CSS。还有最重要的JavaScript代码的改进。

  • 尽量让JavaScript代码不再依赖于没有保证的假设,为此引入许多项测试和检查。测试和检查能使JavaScript代码能够平稳退化。
  • 没有使用 onkeypress 事件处理函数,使得JavaScript代码的可访问性得到保证。
  • 最重要的是把事件处理函数从标记文档分离到一个外部的JavaScript文件。使得JavaScript代码不再依赖于HTML文档的内容和结构。

第7章 动态创建标记

本章主要介绍几种不同的向浏览器的文档动态添加标记的办法。

  • createElement方法。
  • createTextNode 方法。
  • appendChild方法。
  • insertBefore方法。

并且还简要地回顾两种“传统的”技术:

  • document.write方法。
  • innerHTML属性。

使用这些方法的关键是将 Web 文档视为节点树。要注意,用 createElement/createTextNode方法创建的节点还没有插入到HTML中。利用 appendChild/insertBefore方法,可以将这些DocumentFragment对象插入某个文档的节点树,让它们呈现在浏览器窗口中。

这一章还讲到了对图片库如何做进一步改进。这里,有一个实用的 insertAfter 函数的构建过程。在需要把一些标记添加到文档时,这个函数往往能帮上忙。

第8章 充实文档的内容

本章主要介绍使用 JavaScript 语言和 DOM 去维护和创建标记。用以充实文档的内容。主要是 JavaScript 和 DOM 的使用状况。

第9章 CSS-DOM

本章主要介绍 CSS-DOM 技术是如何得到和设置 style 对象的各种属性,而 style 对象本身又是文档中的每个元素节点都具备的属性。

style 属性的最大限制是它不支持获取外部 CSS 设置的样式。但仍可以利用 style 属性去改变各种 HTML 元素的呈现效果。这在无法或是难以通过外部 CSS 去设置样式的场合非常有用。只要有可能,就应选择更新 className 属性,而不是去直接更新 style 对象的有关属性。

在本章中,主要介绍了以下几种 CSS_DOM 技术的具体应用示例。

  • 根据元素在节点树里的位置设置样式(styleHeaderSiblings函数)。
  • 遍历一个节点集合设置有关元素的样式(stripeTables函数)。
  • 在事件发生时设置有关元素的样式(highlightRows函数)。

这几种应用都属于用 JavaScript 入侵 CSS 领地的情况,而这么做的理由不外乎两点:其一是 CSS 无法找到想要处理的目标元素,其二是用 CSS 寻找目标元素的办法还未得到广泛的支持。

第10章 用JavaScript实现动画效果

本章主要讲的是使用 JavaScript 实现动画效果。首先对 “动画” 进行了定义:随时间变化而改变某个元素在浏览器窗口里的显示位置。通过结合使用 CSS-DOM 和 JavaScript 的 setTimeout 函数,很容易实现一个简单的动画。

在这里,主要是使用 JavaScript 创建的动画,使得图片库能够有平滑的动画效果和平稳退化。

第11章 HTML5

本章主要讲解 HTML5 以及使用 Modernizr 等工具检测特性的重要性。同时编写几个例子来熟悉使用 HTML5 的特性。这里介绍的 HTML5 的新特性包括:

  • 可以用来在文档中绘制矢量及位图的 <canvas> 元素。
  • 可以免插件而直接在网页中嵌入音频和视频的 <audio><video> 元素。
  • 可以提供更广泛选择的新的表单控件类型以及新的属性。

第12章 综合示例

本章主要是学以致用,将上面的知识加入到你创建的网站中。这里主要把内容放在有效的、语义化的 HTML5 标签里面,并用外部样式表实现整个外观设计。最后,利用 JavaScript 和 DOM 为它添加诸多交互功能及可用性方面的增强。

到这里就已经学完了书中的内容并应用到实际,构建完整的站点。但是,前端之路也才刚开始,本书只是JavaScript入门书籍,都是围绕 DOM 技术进行编程。

如想获取本资源请按以下步骤操作:

  • 识别二维码并关注公众号 「海人的博客」
  • 在公众号后台回复关键字 「1367」

JavaScript DOM编程艺术(第2版)的简单总结的更多相关文章

  1. 读书笔记:JavaScript DOM 编程艺术(第二版)

    读完还是能学到很多的基础知识,这里记录下,方便回顾与及时查阅. 内容也有自己的一些补充. JavaScript DOM 编程艺术(第二版) 1.JavaScript简史 JavaScript由Nets ...

  2. Javascript DOM 编程艺术(第二版)读书笔记——基本语法

    Javascript DOM 编程艺术(第二版),英Jeremy Keith.加Jeffrey Sambells著,杨涛.王建桥等译,人民邮电出版社. 学到这的时候,我发现一个问题:学习过程中,相当一 ...

  3. 《JavaScript DOM编程艺术(第二版)》读书总结

    这本书是一本很基础的书,但对于刚入前端不久的我来说是一本不错的书,收获还是很大的,对一些基础的东西理解得更加透彻了. 1.DOM即document object model的缩写,文档对象模型,Jav ...

  4. 【读书笔记】读《JavaScript DOM 编程艺术-第2版》

    1.DHTML DHTML曾被认为是HTML/XHTML.CSS和JavaScript相结合的产物,就像今天的HTML5那样,但把这些东西真正凝聚在一起的是DOM.如果真的需要来描述这一过程的话,“D ...

  5. JavaScript -- JavaScript DOM 编程艺术(第2版)

    /* 渐进增强 平稳退化 网页 结构层(structural layer): HTML 表示层(presentation layer): CSS <link rel="styleshe ...

  6. Javascript DOM 编程艺术(第二版)读书笔记——DOM基础

    1.DOM是什么 D=document(文档) O=object(对象) M=Model(模型) DOM又称节点树 一些术语: parent(父)   child(子)   sibling(兄弟)   ...

  7. 《JavaScript DOM 编程艺术 第 2 版》

    第 5 章 最佳实践 平稳退化:现在基本所有带交互的网站都使用 Ajax,SAP 也火起来了,平稳退化真是很难实现了(看到第七章发现我之前的观点是错了) 分离 JS 向下兼容 性能考虑 第 6 章 案 ...

  8. JavaScript DOM编程艺术读后感(1)—— 平稳退化

    最近,在读<JavaScript DOM编程艺术(第二版)>这本书,想着将自己的读后感记录下来,作为记忆吧. 其实我并不是最近才刚开始读这本书的,我读了有一段时间了.我是一名web前端开发 ...

  9. JavaScript DOM编程艺术学习笔记(一)

    嗯,经过了一周的时间,今天终于将<JavaScript DOM编程艺术(第2版)>这本书看完了,感觉受益匪浅,我和作者及出版社等等都不认识,无意为他们做广告,不过本书确实值得一看,也值得推 ...

随机推荐

  1. 使用T4模板动态生成NPoco实体类

    这是一个妥妥的NPoco类,这是我们在工作开发中,手动去写这个实体类,属实非常心累,字段少无所谓一次两次,数量多了,字段多了,就心态裂开

  2. BJOI2017 喷式水战改

    题目链接. Description 维护一个序列,支持操作: 每次在 \(P_i\) 位置后插入一段 \(X_i\) 单位的燃料,这一段有三个模式,对应的能量分别是 \(A_i, B_i, C_i\) ...

  3. AcWing 324. 贿赂FIPA

    题目链接 大型补档计划 \(f[i][j]\) 表示第 \(i\) 个国家,获得 \(j\) 个国家支持,用的最少花费 \(f[i][0] = 0\) \(f[i][sz[i]] = w[i]\) 对 ...

  4. Centos7网卡绑定的方法

    温和的方式请参考:https://www.cnblogs.com/zzf0305/p/9594093.html 一:传统的bond方式(饭已验证)------------本种的绑定方式比较暴躁 (1) ...

  5. JavaSE09-(练手)简易学生管理系统

    1.学生管理系统实现步骤 案例需求 系统主要功能如下: 添加学生:通过键盘录入学生信息,添加到集合中 删除学生:通过键盘录入要删除学生的学号,将该学生对象从集合中删除 修改学生:通过键盘录入要修改学生 ...

  6. Spring Boot 最简单的解决跨域问题

    跨域问题(CORS) CORS全称Cross-Origin Resource Sharing,意为跨域资源共享.当一个资源去访问另一个不同域名或者同域名不同端口的资源时,就会发出跨域请求.如果此时另一 ...

  7. 多个HDFS集群的fs.defaultFS配置一样,造成应用一直连接同一个集群的问题分析

    背景 应用需要对两个集群中的同一目录下的HDFS文件个数和文件总大小进行比对,在测试环境中发现,即使两边HDFS目录下的数据不一样,应用日志显示两边始终比对一致,分下下来发现,应用连的一直是同一个集群 ...

  8. [水题日常]Luogu1462 通往奥格瑞玛的道路

    QwQ马上高二啦不能颓啦-知乎上听说写博客的效果挺好的,来试一下好啦~ 题目链接<< 题目描述 在艾泽拉斯,有n个城市.编号为1,2,3,...,n. 城市之间有m条双向的公路,连接着两个 ...

  9. 关于ABAP和JSON互相转换

    关于ABAP数据结构和JSON格式转换,需要用到标准的类/UI2/CL_JSON一下两个方法, DESERIALIZE是把JSON格式转换成ABAP数据结构,SERIALIZE是把ABAP数据结构转换 ...

  10. 最火的分布式调度系统 XXL-JOB 安装和简单使用

    唉,在谈文章之前先说一下自己的情况.原计划是在上周六写完这篇文章的,然而周六的时候打开电脑的,按照平常"惯例",先补一些 "黑色五叶草"/"进巨&qu ...