《HEAD FIRST HTML5 PROGRAMMING 中文版》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:(美)弗里曼,(美)罗布森著;林琪,张伶等译
  • 出 版 社:中国电力出版社
  • 出版年份:2012
  • ISBN:
  • 页数:580 页
图书介绍:你可能想创建具有动态性、交互性、包含丰富数据而且互连的Web页面。为什么不用HTML5创建成熟的Web应用呢?另外,为什么不使用现代技术,像在移动设备上一样轻松地应用到桌面浏览器呢?通过本书的学习,你就能轻松地学习如何使用当前的标准和将来的最佳实践来构建Web应用。在这本书中你还会了解HTML5新API的基础知识,还将学习如何使用HTML5和JavaSriptAPI创建交互式Web页面,以及如何使用这些API来构建让你的朋友对你刮目相看的Web应用。

1 认识HTML5 2

今天就升级到HTML5! 2

HTML5-o-Matic介绍,着手更新你的HTML! 4

没想到吧,HTML5标记居然离你这么近! 7

HTML5闪亮登场:最新版HTML的告白 11

真正的HTML5请起立…… 12

HTML5到底如何工作…… 14

谁做什么? 16

第一项任务:浏览器侦察 17

用JavaScript能做些什么? 22

编写正式的JavaScript 25

编写正式的JavaScript(续)…… 26

要点 31

练习答案 33

2 介绍JavaScript和DOM 36

JavaScript的工作方式 36

用JavaScript能做什么? 37

声明变量 38

如何命名变量 40

需要表达 43

反反复复…… 46

用JavaScript做判断 49

更多判断……另外,增加一个“收容箱” 50

在页面中增加JavaScript,怎么加?在哪里加? 53

JavaScript如何与页面交互 54

如何制作你自己的DOM 55

初尝DOM 56

HTML5来自火星,JavaScript来自金星 58

页面完全加载之前不要打扰DOM 64

那么,DOM还能做什么? 66

能不能再谈谈JavaScript?或者,能不能告诉我JavaScript中如何存储多个值? 67

Phrase-o-Matic 71

要点 75

练习答案 77

3 事件、处理程序,诸如此类 86

准备进入Web镇之声 86

出发…… 87

不过我点击“Add Song”按钮时什么也没有发生 88

处理事件 89

制订计划…… 90

访问“Add Song”按钮 90

为按钮指定一个点击处理程序 91

仔细研究发生了什么…… 92

获得歌曲名 94

如何向页面增加一首歌? 97

如何创建一个新元素 99

向DOM增加新元素 100

集成在一起…… 101

……试一试 101

回顾一我们做的工作 102

如何增加成品代码…… 105

集成成品代码 106

要点 108

练习答案 110

4 JavaScript函数和对象 114

扩展你的词汇 114

如何增加你自己的函数 115

函数如何工作 116

函数剖析 121

局部变量和全局变量 123

了解局部变量和全局变量的作用域 124

噢,我们提到过函数也是值吗? 128

有人谈到“对象”? 131

如何用JavaScript创建对象 132

可以用对象做的一些事情 133

谈谈向函数传入对象 136

对象也可以有行为…… 142

再回到Web镇影院…… 143

增加“this”,关键字 145

如何创建构造函数 147

到底是怎么回事? 149

试一试你的构造函数 153

window对象到底是什么? 155

再谈window.onload 156

再谈document对象 157

再谈document.getElementById 157

再来考虑一个对象:元素对象 158

要点 160

练习答案 162

5 实现HTML位置感知 166

位置,位置,位置 166

纬度和经度…… 167

地理定位API如何确定你的位置 168

你到底在哪里? 172

如何集成 176

找出我们的秘密位置…… 179

编写代码查找距离 181

如何向页面增加地图 183

加一个按钉…… 186

用Google Maps API还能做另外一些很酷的事情 188

可以谈谈你的精度吗? 191

“无处可逃” 192

启动应用 193

调整原来的代码…… 194

动起来! 196

你有一些选项 198

超时和最大年龄…… 199

不要大胆尝试(让地理定位充分施展) 202

完成这个应用! 204

集成我们的新函数 205

要点 207

练习答案 210

6 与web交流 214

万能糖果公司需要一个Web应用 214

万能糖果公司的更多背景介绍 216

如何向Web服务做出请求? 219

如何从JavaScript做出请求 220

XML让位,JSON登场 226

编写一个onload处理函数 229

显示糖果销售数据 230

如何建立你自己的Web服务器 231

调整代码以利用JSON 236

转向实际服务器 237

惊险情节! 239

记得吧?我们有一个惊险情节,这是一个bug 242

浏览器安全策略是什么? 244

那么,我们有哪些选择? 247

认识JSONP 252

那么JSONP中的“P”代表什么? 253

更新万能糖果公司的Web应用 256

第1步:处理script元素…… 264

第2步:现在来建立定时器 265

第3步:重新实现JSONP 267

差点忘了:当心可怕的浏览器缓存 272

如何删除重复的销售报告 273

更新JSON URL来包含lastreporttime 275

要点 277

7 秀出你的艺术天份 282

新的创业项目:TweetShirt 282

审查“初样” 283

如何在Web页面中增加画布 286

如何看到画布 288

在画布上绘图 290

妥善地失败 295

TweetShirt:全局视图 297

首先,建立HTML 300

现在来增加〈form〉 301

用JavaScript做些计算 302

编写drawSquare函数 304

增加BackgroundColor调用 307

与此同时,再回到TweetShirt.com…… 309

“奇怪地”绘制 311

分解arc方法 314

浅尝弧的使用 316

我说度,你却说弧度 317

再来编写TweetShirt的圆代码 318

编写drawCircle函数…… 319

得到微博 323

画布特写 328

试一试drawText 330

完成drawText 函数 331

要点 338

练习答案 341

8 不再是父辈的老电视 350

认识Webville TV 350

先搞定HTML部分…… 351

video元素如何工作? 353

深入研究视频属性…… 354

关于视频格式需要知道什么 356

如何处理所有这些格式…… 358

我听说有API 363

Webville TV的一个小内容“计划” 364

如何编写“视频结束”处理程序 367

canPlayType方法如何工作 369

打开演示样机的包装 375

检查其余工厂代码 376

setEffect和setVideo处理程序 378

实现视频控件 384

切换测试视频 387

现在来些特效 389

如何完成视频处理 392

如何使用scratch缓冲区处理视频 393

用画布实现scratch缓冲区 395

现在需要写一些效果 399

如何使用error事件 406

要点 408

练习答案 410

9 在本地存储 414

浏览器存储如何工作(1995~2010) 414

HTML5 Web存储如何工作 417

记住…… 418

本地存储和数组是双胞胎吗? 424

创建界面 429

现在来增加JavaScript 430

完成用户界面 431

需要暂停一下,来点预定服务 434

自己动手DIY维护 435

这个技术确实有…… 439

使用数组重新实现应用 440

转换createSticky来使用数组 441

删除便条贴 446

deleteSticky函数 449

如何选择要删除的即时贴? 450

如何由事件得到要删除的即时贴 451

还要从DOM删除即时贴 452

更新用户界面来指定颜色 453

JSON.stringify,不只是用于数组 454

使用新的stickyObj 455

请不要自己尝试(或者突破你的5MB) 458

既然你已经了解了localStorage,怎么使用呢? 462

要点 464

练习答案 466

10 运用JavaScript 474

可怕的“slow script” 474

JavaScript如何分配时间 474

单线程遇到麻烦 475

增加另一个控制线程提供帮助 476

Web工作线程如何工作 478

第一个Web工作线程…… 483

编写Manager.js 484

从工作线程接收消息 485

现在来编写工作线程 486

虚拟土地掠夺 494

如何计算Mandelbrot集 496

如何使用多个工作线程 497

构建Fractal Explorer应用 503

成品代码 504

创建工作线程,为它们分配任务…… 508

编写代码…… 509

启动工作线程 510

实现工作线程 511

重回代码:如何处理工作线程的结果 514

让画布占满浏览器窗口 517

吹毛求疵的主程序员 518

实验室生活 520

要点 524

练习答案 526

附录:其他 532

#1 Modemizr 532

#2音频 533

#3 jQuery 534

#4 XHTML死了,还是XHTML永存 536

#5 SVG 537

#6离线Web应用 538

#7 Web Socket 539

#8更多画布API 540

#9选择器API 542

#10不过,还有呢! 543

HTML5新构造指南 545

Web镇HTML5语义元素指南 546

Web镇CSS3属性指南 548