作者简介:
John Resig
jQuery之父,世界级Web开发大师。2007年加入Mozilla公司,现为可汗学院开发人员。
Russ Ferguson
资深开发人员,曾为多家知名企业开发应用,并任教于普罗斯特艺术学院和帕森设计学院。
John Paxton
资深开发人员,通晓多种开发语言,现专心研究Java和JavaScript
译者简介:
门佳
一名技术控,喜欢溯本求源,挖掘技术背后的细节。对于编译技术、Linux系统编程、Perl、网络协议分析、Web前后端开发等均有涉猎,翻译过《Linux Shell脚本攻略》、《TCP Sockets编程》、《Linux命令行与shell脚本编程大全(第3版)》等书籍。闲暇经常混迹于豆瓣和知乎,他喜欢说的一句话就是“无聊才读书”。
李伟
西安电子科技大学通信专业硕士,理工出身,醉心史著;擅长研究,不拘于术。曾任职于国内某著名电信设备制造商,有十余年VxWorks及Linux操作系统编程经历,近年来将注意力转向Web开发领域。一路激情溢怀,感恩充内,恰是俗人不甘俗。
第1章 专业JavaScript技术1
1.1 JavaScript的历程1
1.2 现代JavaScript3
1.2.1 库的崛起4
1.2.2 移动,可不只说说而已5
1.2.3 何去何从5
1.3 后续内容6
1.4 小结7
第2章 特性、函数和对象8
2.1 语言特性8
2.1.1 引用和值8
2.1.2 作用域10
2.1.3 上下文12
2.1.4 闭包13
2.1.5 函数重载与类型检查16
2.2 新的对象工具19
2.2.1 对象19
2.2.2 修改对象19
2.3 小结22
第3章 创建可重用代码23
3.1 面向对象的JavaScript23
3.1.1 继承27
3.1.2 成员可见性31
3.1.3 面向对象JavaScript的未来33
3.2 打包JavaScript33
3.2.1 命名空间33
3.2.2 模块模式34
3.2.3 立即调用的函数表达式36
3.3 小结38
第4章 JavaScript代码调试39
4.1 调试工具39
4.1.1 控制台40
4.1.2 利用控制台的特性42
4.2 调试器43
4.2.1 DOM探查器44
4.2.2 网络分析器44
4.2.3 时间线45
4.2.4 侧写器45
4.3 小结47
第5章 文档对象模型48
5.1 文档对象模型简介48
5.1.1 DOM结构50
5.1.2 DOM中的相互关系51
5.2 访问DOM元素53
5.3 等待HTML DOM载入56
5.3.1 等待页面载入56
5.3.2 等待正确的事件56
5.4 获取元素内容57
5.4.1 获取元素的文本内容57
5.4.2 获取元素的HTML59
5.5 使用元素特性59
5.6 修改DOM63
5.6.1 使用DOM创建节点63
5.6.2 插入DOM63
5.6.3 向DOM中插入HTML64
5.6.4 从DOM中删除节点66
5.6.5 处理DOM中的空白字符67
5.6.6 简单的DOM导航68
5.7 小结70
第6章 事件71
6.1 JavaScript事件简介71
6.1.1 栈、队列和事件循环71
6.1.2 事件阶段72
6.2 绑定事件侦听器73
6.2.1 传统式绑定74
6.2.2 DOM绑定:W3C77
6.2.3 解除事件绑定78
6.3 常见的事件特性79
6.3.1 事件对象79
6.3.2 取消事件冒泡80
6.3.3 屏蔽浏览器的默认行为81
6.3.4 事件委托82
6.4 事件对象83
6.4.1 普通属性83
6.4.2 鼠标属性84
6.4.3 键盘属性86
6.5 事件类型86
6.5.1 页面事件87
6.5.2 UI事件88
6.5.3 鼠标事件88
6.5.4 键盘事件89
6.5.5 表单事件90
6.5.6 事件可访问性90
6.6 小结91
第7章 JavaScript与表单验证92
7.1 HTML与CSS表单验证92
7.2 JavaScript表单验证95
7.2.1 验证与用户98
7.2.2 验证事件99
7.3 定制验证101
7.4 小结102
第8章 Ajax入门103
8.1 使用Ajax104
8.1.1 HTTP请求104
8.1.2 HTTP响应109
8.2 小结111
第9章 Web生产工具112
9.1 为项目搭建脚手架112
9.2 NPM必不可少113
9.3 生成器113
9.3.1 版本控制115
9.3.2 添加文件、更新以及首次
提交116
9.4 小结119
第10章 AngularJS与测试120
10.1 视图与控制器122
10.2 远程数据源124
10.3 路由126
10.4 路由参数126
10.5 应用程序测试128
10.5.1 单元测试128
10.5.2 使用Protractor进行端到端
测试132
10.6 小结134
第11章 JavaScript的未来135
11.1 ECMAScript的过去和未来135
11.2 使用ECMAScript Harmony136
11.2.1 Harmony资源136
11.2.2 使用Harmony137
11.3 ECMAScript Harmony语言特性141
11.3.1 箭头函数142
11.3.2 类143
11.3.3 Promise144
11.3.4 模块146
11.3.5 类型扩展148
11.3.6 全新的聚合类型151
11.4 小结153
附录A DOM参考154
《了不起的王德妙:消防安全篇2》内容简介:本套丛书以漫画故事小贴士相结合的形式呈现,本书讲述消防安全知识。书中内容取自于隔壁
《战时国民政府行政机构改革(1937~1945)》内容简介:本书旨在考察抗战时期国民政府实施行政机构改革的全过程,分析国民政府为实
MichaelGoodrichandRobertoTamassia,authorsofthesuccessful,DataStructuresandAlgori...
用户界面设计:有效的人机交互策略(第五版),ISBN:9787121128929,作者:(美)施耐德曼,(美)普莱萨特著,张国印等译目录
《Photoshop修片,超简单!》内容简介:这是一本学习起来“超简单”的修片实用教程。本书以案例为主导,以新颖的写作形式介绍了包括
Anew,revisededitionofayetunrivaledworkonfrequencydomainanalysisLongrecognizedfor...
《背包旅行》内容简介:本书是基于一名背包客和背包客研究者的自助旅行体验,对背包旅行进行全面再概念化的学术专著。它不仅展现了
《Linux高级程序设计》是Linux程序设计领域的一部力作,讲解了大量程序员需要掌握的关键知识点,包括Linux开发中的基本工具、Lin
《MySQL核心技术与最佳实践》内容简介:作为世界上最受欢迎的开源数据库管理系统,MySQL具有成本低廉、体积小、便于安装、性能优越
《从公司到国家:美国制度困局的历史解释》内容简介:本书通过对美国制度的建立进行探源与复盘,提出了美国是“公司型国家”的观点
前言——必须为游戏正名(节选)文/刘晋锋去年的冬天,在三里屯一家咖啡馆见到了白广大,胖胖地携着一股寒气从外面走进来,灰不
《使用GitOps实现Kubernetes的持续部署:模式、流程及工具》内容简介:本书提供了通过GitOps使用Kubernetes的实用教程,内容涵盖Gi
C++入门经典(第3版) 本书特色 本书详述了C++语言的各个方面,包括数据类型、程序控制、函数、指针、调试、类、重载、继承、多态性、模板、异常和输入输出等内容...
《从秦朝说起,到清朝结束(二):楚汉争雄》内容简介:秦朝末年,作为反秦起义军的两股重要力量,刘邦和项羽不约而同地登上了历史
《中国零售业发展监测与分析报告(2014)》内容简介:本书按年度全面监测中国零售业发展情况,分析中国零售业发展脉络,重点是中国
不同于传统的科研论文写作教程,赵大良等的《科研论文写作新解——以主编和审稿人的视角》以期刊主编和审稿人的视角剖析论文的写
《开会是门技术活儿》内容简介:《开会是门技术活儿》是一本讲述开会的门道和技巧的通俗实用书,分为“秘诀篇”和“实战篇”。例如
为一种开源数据库,MySQL已经成为最流行的服务器软件包之一。开发人员在其数据库引擎中提供了丰富的特性(只需很少的内存和CPU支
Haveyoueverneededtocreateaniconforsomethingandnotknownwheretostart?Howdoyougoabo...
《不可不知的人性》内容简介:我们常说:一个人越炫耀什么,就说明他内心越缺少什么。一个人越在意什么,那就是让他倍感自卑的地方