重读《JavaScript DOM编程艺术》(第一版)
今天来了雅兴去图书馆看书。把《JavaScript DOM编程艺术》温习了一遍,平时写js的机会不是特别多,很多知识都有些模糊了。
伴随着身边键盘卡啦卡啦的声音,一位手速不是一般的快的程序猿。我也快速的回顾了下~
Chapter 1 JavaScript简史
1、Netscape(网景)/Sun公司
2、JavaScript 1.0 — Netscspe Navigator 2
3、VBScript — IE 3
4、ECMA标准化 — 浏览器之争
5、什么是DOM?
W3C 文档对象模型 (DOM) 是中立于平台和语言的接口,它允许程序和脚本动态地访问和更新文档的内容、结构和样式。
6、DHTML:HTML\CSS\JS三种技术结合的产物。(忽略)
7、W3C DOM标准化
8、JavaScript
(1)ECMAScript:核心语言功能
(2)DOM:Document Object Model 文档对象模型(多层节点结构)
(3)BOM:Broser Object Model浏览器对象模型
9、五大主流浏览器
IE、firefox、Chrome、Safari、Opera
Chapter 2 JavaScript语法
1、基本语法
(1)区分大小写
(2)借鉴C
(3)驼峰大小写格式
(4)注释 //
/**/
2、JavaScript插入方法
(1)嵌入
(2)外部
3、变量
(1)不允许含空格、标点,$
除外
(2)局部变量(var
)/全局变量
4、数据类型
(1)Undefined
(2)null(空对象指针,Undefined的值是null派生的)
(3)Boolean(true/false)
(4)Number(NaN/Infinity)
(5)String(转义字符,单/双引号)
(6)Array(length,关联数组)
(7)Object(var mkq = new Person ;)
5、拼接
alert(“10″+20); //1020
alert(10+20); //30
6、基本操作符
(1)一元
++\–+(符)-(符)
(2)位
~/&/|/^/<>/>>>(无符号右移)
(3)布尔操作
!/&&/||
(4)乘性
乘:
其中一个NaN → NaN
Indefinity*0 → NaN(not a number)
Indefinity*Indefinity → Indefinity
除:
其中一个NaN → NaN
Indefinity/Indefinity → NaN
0/0 → NaN
余同除
(5)加性
+/-
(6)关系
/=/<=
(7)相等
!=
= 全等
! 不全等
(8)条件
… ? … : …
(10)赋值
(11)逗号
值为最后一项
7、语句
if/while/do-while/for
switch
break/continue
8、函数
(1)function
(2)作用域(局部变量(函数里var)/全局变量)
Chapter 3 DOM
1、DOM
D — Document
O — Object
M — Model
2、节点node
元素节点(element node):标签
文本节点(text node):内容
属性节点(attribute node):标签属性
3、getElementById()
getElementByTagName()
getElementByTagName(“*”).length元素节点的数目
4、getAttribute(属性名) 查属性节点
setAttribute(属性名,value) 修改属性节点
Chapter 4 案例研究:JavaScript美术馆
- 第一张
- 第二张
- 第三张
- 第四张
请选择图片
55555~调了我半个小时,结果是把source打成了sourse,我说怎么一点反应都没有。
回归知识点:
1、οnclick=”return false;”
默认行为不会发生(不会链接到另一图片)
2、childNodes(所有子元素)
3、nodeType
(1)1 — 元素node
(2)2 — 属性node
(3)3 — 文本node
4、setAttribute():不必记忆哪种属性可以用DOM
5、nodeValue节点的值
6、firstChild第一个元素
lastChild最后一个元素
Chapter 5 JavaScript编程原则和良好习惯
1、创建新窗口
window.open(url,name,features);
window.open(winURL,”mkq”,”width=320,height=490″);
2、JS伪协议:极力不推荐
3、预留退路:如果JavaScript禁用,如何?
4、分离JavaScript
5、window.onload()
Chapter 6 JavaScript美术馆改进版
1、预留退路:假设JS禁用的情况下
第一张
就算JS禁用:
还是能展示每一张图片,就是观看起来麻烦一些。
2、分离JavaScript
应该在外部文件里用οnclick=”…”,这样才能做到分离JS。
方法:用一个id与JS联系。
细节:
(1)多个JS函数写进onload事件处理函数上
(2)可读性
(3)函数都要养成写{}的习惯
(4)不要放过每一个细节
(5)DOM Core和HTML-DOM
DOM Core
placeholder.setAttribute(“src”,source);
HTML-DOM
placeholder.src=source;
让我想到了花了2天赶出来的工作室主页~以后要上线,绝对要改好了再出现!这样用户体验才能满分!
Chapter 7 动态创建HTML内容
1、动态html
(1)老的方法:document.write()严重违背分离原则.innerHTML()
(2)新的方法:createElement()/createTextNode()/appendChild()/insertBefore()
2、creatElement()
创造元素节点
3、creatTextNode()
创建文本节点。
4、appendChild()
创建子节点。
5、insertBefore()
把一个新的元素插入到一个现有元素前面
parentElement(parentNode).insertBefore(newElement,targetElement)
insertAfter()方法不存在
6、innerHTML
是一项专利技术,不是业界标准。
7、最后的gallery
Chapter 8 CSS-DOM
1、三位一体网页
(1)结构层 HTML
(2)表示层 CSS
(3)行为层 JS
2、分离
重读《JavaScript DOM编程艺术》(第一版)相关推荐
- JavaScript Dom编程艺术
当我对JavaScript还停留在只认识这几个字母的时候,有一天我突然心血来潮,在网上下了DOM Scripting的样章,照着里面的例子写了我平生第一个能让我知所以然JavaScript,在浏览器运 ...
- 初读JavaScript DOM编程艺术(一)
JavaScript DOM编程艺术--前三章概念总结 一. 概述 1.什么是JavaScript 2.什么是DOM 二. JavaScript 语法 1. 语句和注释 2. 变量和数组 三. DOM ...
- JavaScript DOM编程艺术学习笔记(一)
嗯,经过了一周的时间,今天终于将<JavaScript DOM编程艺术(第2版)>这本书看完了,感觉受益匪浅,我和作者及出版社等等都不认识,无意为他们做广告,不过本书确实值得一看,也值得推 ...
- JavaScript DOM编程艺术第一章:JavaScript简史
本系列的博客是由本人在阅读<JavaScript DOM编程艺术>一书过程中做的总结.前面的偏理论部分都是书中原话,觉得有必要记录下来,方便自己翻阅,也希望能为读到本博客的人提供一些帮助, ...
- 《JavaScript DOM 编程艺术》读书笔记
<JavaScript DOM 编程艺术>读书笔记--其一 第二章 1.Javascript代码编写方式: (1)将JavaScript代码放在文档<head>标签中的< ...
- JavaScript DOM编程艺术(第二版)
JavaScript DOM编程艺术简要介绍 第二章: JavaScript语法 语法 语句 注释 变量 数据类型 数组 对象 操作 条件语句 比较操作符 逻辑操作符 循环语句 while循环 for ...
- JavaScript DOM 编程艺术 (第二版)学习之5-6章
JavaScript DOM 编程艺术 (第二版)学习之5-6章 第五章 最佳实践 5.1 过去的错误 5.2 平稳退化 5.2.1 "javascript:"伪协议 5.2.2 ...
- JavaScript DOM 编程艺术 (第二版)学习之3-4章
JavaScript DOM 编程艺术 (第二版)学习之3-4章 第三章 DOM 3.1 文档:DOM中的"D" 3.2 对象:DOM中的"O" 3.3 模型: ...
- JavaScript DOM编程艺术简略笔记
简略目录 1.BOM 2.DHTML 3.数组 4.条件判断的注意点 5.函数中变量的作用域问题 6.几种对象的简介 7.BOM和DOM 8.DOM操作中的一些特别点 9.JS文件与CSS文件的引入方 ...
最新文章
- 用Numpy手写各种距离度量
- hadoop2.6.0安装详细步骤
- SAP Spartacus checkout Shipping address的页面实现
- 机器学习基石-作业四-代码部分
- 信息学奥赛一本通 2018:【例4.3】输出奇偶数之和
- ARM CORTEX-M0 权威指南 英文
- 从键盘上输入一个字符串并保存在str1中,并把str1中下表为偶数的字符保存到str2中
- novell.directory.ldap获取邮箱活动目录
- python-下拉框处理
- 用K-Means聚类分析做客户分群
- java 毕向东_毕向东java视频目录
- matlab 入射线反射线,ray 射线追踪的仿真小程序最多可以模拟三次反射, 出 图 matlab 272万源代码下载- www.pudn.com...
- 易腐食品行业调研报告 - 市场现状分析与发展前景预测
- 十进制转换成十六进制
- 无需越狱,iPhone修改微信提示音!
- CentOS7 个性化
- Android11.0下应用管控实现解决方案(家长管理)(一)
- 如何解决 电脑右下角网络连接红叉问题?
- Springboot源码分析第一弹 - 自动装配实现
- MySQL的while循环
热门文章
- 现代web数据传输技术及数据格式
- SpringBoot使用H2内嵌数据库
- 不要小看它——编码与解码
- 俺重装系统后一些小配置(给自己备忘)
- 一个女SEOer的忏悔书
- 文字处理控件功能比较:TX Text Control vs. RichTextBox
- 【长文】在《 Ray Tracing from the Ground Up》的基础上实现BART的动画
- Q82:三角形网格[Triangle Mesh]图形的平滑着色[Smooth Shading]
- 怎么删除用户_误删的手机照片怎么恢复?三种快速恢复的方法
- 数学建模——遗传算法(GA)