最近又看了一遍JS DOM编程艺术,照例来写一写读后感。

其实,我从中学到最深的是几个概念:1、平稳退化。当浏览器并不支持JS的时候网页的基本核心功能是还可以用的;2、逐渐增强。在原始的信息层上用其他层去增加其他信息。用CSS去增加效果,用JS去添加行为。当然某些浏览器可以支持部分的js,为了使旧浏览器可以用,不至于因为某些代码挂掉。3、将结构、表现、行为分离,而且分离越大越好。

然后我学到了简单的一点关于对象检测的技术,这在运用向后兼容原则时必要的,但文章太过保守,像:document.getElementsByTagName等也在检测。或许在老古董的浏览器上有用,但现在基本无用。其次,文中说可以从:减少访问DOM及添加标记、合理合并脚本(减少请求)、合理放置脚本位置、压缩脚本等几个方面提高性能。

或许还让我了解了一点AJAX,文中显示建立了一个XMLHttpRequest对象、然后用该对象来发送请求接受响应,但是这是异步的。其中运用了事件监听,而这是其异步的根源。因为,就如同onclick、onmouseover等事件一样,该函数不会立即执行,它会加入到任务队列之中而非主线程,而JS是单线程的。必须要待主线程空了之后才有可能执行。另,setTimeout和setInterval也是添加到任务队列中。计时是相对于主线程空的计时,计时是可以中断的,待主线程有了任务它就暂停计时。

以上就是我认为与我有益的东西。

大家对本书评价很高,确实是入门的好选择,但最好是对HTML和CSS有所了解、对JS语言的语法本身有所了解就更好;否则一开头还是有点困难。所以,一开头还是先学HTML、CSS;然后将高程关于JS语言本身的部分看完再回头学效果更好。

我自己练习的时候遇到一个问题:Failed to load resource: net::ERR_FILE_NOT_FOUND。这是什么原因呢?路径的问题,我是动态的产生元素,但我以为图片的src应该是相对于我的js文件的相对路径。但事实是建立的元素经过浏览器渲染之后实际好像就是原来就在这里一样,当然路径应该是相当于html的相对路径了,若是使用绝对的URL不存在问题。

学习Javascript DOM 编程艺术的一点心得的更多相关文章

  1. 《JavaScript DOM 编程艺术》 学习笔记

    目录 <JavaScript DOM 编程艺术> 学习笔记 第一章 js简史 第二章 js语法 准备工作 语法 第三章 DOM DOM中的D DOM中的O DOM中的M 第四章 js图片库 ...

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

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

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

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

  4. JavaScript DOM编程艺术第一章:JavaScript简史

    本系列的博客是由本人在阅读<JavaScript DOM编程艺术>一书过程中做的总结.前面的偏理论部分都是书中原话,觉得有必要记录下来,方便自己翻阅,也希望能为读到本博客的人提供一些帮助, ...

  5. 《javascript dom编程艺术》笔记(一)——优雅降级、向后兼容、多个函数绑定onload函数

    刚刚开始自学前端,如果不对请指正:欢迎各位技术大牛指点. 开始学习<javascript dom编程艺术>,整理一下学习到的知识.今天刚刚看到第六章,记下get到的几个知识点. 优雅降级 ...

  6. 《JavaScript Dom 编程艺术》读书笔记-第4章

    我的前端入门第一本书是<JavaScript Dom 编程艺术>,网上查找资料发现前端的入门推荐书籍最受好评的就是这本和<JavaScript 高级程序设计>了.之所以先选这本 ...

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

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

  8. JavaScript DOM编程艺术(第2版)的简单总结

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

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

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

随机推荐

  1. Hibernate映射1

    Hibernet映射 集合映射: 类的属性字段是集合的. set: <set name=”属性字段” table=“属性字段的表名”> <key 外键 column=“”> & ...

  2. CodeForces 132C Logo Turtle (记忆化搜索)

    Description A lot of people associate Logo programming language with turtle graphics. In this case t ...

  3. oracle后台进程2

    oracle中的进程共分为三类:用户进程.服务进程.后台进程.其中后台进程伴随实例的启动而启动,他们主要是维护数据库的稳定,相当于一个企业中的管理者及内部服务人员.他们并不会直接给用户提供服务. 一: ...

  4. C#核编之内建数据类型

    这个随笔中的重点之一是说明:C#中所提供的关键字都是相应系统类型的简化符号(如int是System.Int32类型的简化符号) 一.内建数据类型与层级结构 所有的C#内建数据类型都支持默认的构造函数, ...

  5. satellite-menu和ArcMenu

    github上的开源库其实还是很不错的,之前的时候总感觉学一些开源库比较麻烦,里边有好多方法什么的,今天终于迈出了第一步,中间也遇到了一些问题,现在总结下,也给其他刚开始学习开源库的小伙伴一些指导: ...

  6. View和viewController的生命周期

    View和viewController的生命周期 一.ViewController的职责 对内管理与之关联的View,对外跟其他ViewController通信和协调.对于与之关联的View,View ...

  7. IOS支付宝支付出现6002问题的解决办法

    运行支付宝官方demo进行支付测试,会出现6002-网络连接错误,是因为以iOS9 SDK编译的工程会默认以SSL安全协议进行网络传输,即HTTPS,如果依然使用HTTP协议请求网络会报系统异常并中断 ...

  8. hdu 1908

    题意:一个人有一个代号K和一个优先等级P,一共有4种操作,0:结束,1:新建一个人,代号为K,优先等级为P,2:输出优先等级最大的人的代码,并删除该人,3:输出优先等级最小的人的代码,并删除该人. 用 ...

  9. Java log4j的环境搭建

    一.Log4j是什么? Log4j是Apache的一个开源代码项目,通过使用Log4j,我们可以控制日志信息输出的目的地.最常见的就是输出到控制台或者日志文件.同时,它强大的一点是可以在C.C++等其 ...

  10. debian install & configure(2)-drivers-nvidia

    ==========================================手动编译卸载受限驱动 :apt-get --purge remove nvidia-*apt-get --purge ...