《JavaScript网页编程从入门到精通》PDF下载

  • 购买积分:20 如何计算积分?
  • 作  者:庞永庆,麦廷琮编著
  • 出 版 社:北京:科学出版社
  • 出版年份:2008
  • ISBN:9787030225238
  • 页数:716 页
图书介绍:本书分为三大篇:JavaScript语言的基础知识;JavaScript的高级应用;JavaScript的应用与发展。

第1篇 语言基础 2

第1章 JavaScript概述 2

1.1 什么是JavaScript 2

1.2 为什么使用JavaScript 3

1.2.1 JavaScript的基本特点 3

1.2.2 JavaScript与Java进行比较 4

1.3 JavaScript有什么作用 4

1.3.1 进行交互 5

1.3.2 进行本地验证 5

1.4 在什么地方使用JavaScript 5

1.4.1 服务器端应用 5

1.4.2 客户端应用 5

1.5 如何使用JavaScript 6

1.5.1 嵌入JavaScript 6

1.5.2 链接JavaScript 7

1.6 怎样编写JavaScript 8

1.6.1 使用纯文本编辑器 8

1.6.2 专业脚本编辑工具 8

1.7 如何运行JavaScript 9

1.8 小结 10

第2章 HTML是学习JavaScript的基础 11

2.1 HTML简介 11

2.2 结构化标记 12

2.2.1 架构标记 12

2.2.2 注释标记 14

2.3 文本标记 15

2.3.1 换行标记 15

2.3.2 水平线标记 17

2.3.3 文字标记 18

2.3.4 加粗标记 19

2.3.5 斜体标记 20

2.3.6 下划线标记 21

2.3.7 删除线标记 21

2.3.8 打字体标记 22

2.3.9 上标标记和下标标记 23

2.3.10 标题标记 24

2.4 列表标记 25

2.4.1 未排序列表 25

2.4.2 排序列表 26

2.4.3 自定义列表 27

2.5 表单标记 28

2.5.1 表单容器 28

2.5.2 单行文本框 29

2.5.3 密码框 30

2.5.4 多行文本框 30

2.5.5 单选按钮 31

2.5.6 复选框 33

2.5.7 列表框 34

2.5.8 文件域 36

2.5.9 提交按钮和取消按钮 37

2.6 小结 38

第3章 JavaScript基本语法 39

3.1 注释 39

3.1.1 单行注释 39

3.1.2 多行注释 41

3.1.3 隐藏脚本注释 42

3.2 关键字 43

3.3 〈script〉标记 45

3.3.1 〈script〉标记的属性设置 45

3.3.2 〈script〉标记的位置 46

3.3.3 〈script〉标记的数量 48

3.4 分号 49

3.5 数据类型 51

3.5.1 基本数据类型 51

3.5.2 特殊数据类型 55

3.5.3 数据类型转换 57

3.6 变量 66

3.6.1 变量命名 67

3.6.2 变量声明和初始化 67

3.6.3 变量类型 73

3.6.4 变量作用域 74

3.7 小结 77

第4章 JavaScript运算符 78

4.1 赋值运算符 78

4.1.1 直接赋值运算符的一般使用 78

4.1.2 直接赋值运算符的特殊使用 79

4.2 算术运算符 82

4.2.1 基本算术运算符 82

4.2.2 算术赋值运算符 84

4.2.3 增量减量算术运算符 85

4.3 字符串运算符 87

4.4 比较运算符 90

4.4.1 比较运算符的一般使用 90

4.4.2 比较运算符的特殊使用 93

4.5 逻辑运算符 96

4.5.1 逻辑与运算符 96

4.5.2 逻辑或运算符 97

4.5.3 逻辑非运算符 98

4.5.4 逻辑运算符的特殊使用 99

4.6 位运算符 100

4.6.1 基本位运算符 100

4.6.2 移位运算符 105

4.6.3 位赋值运算符 108

4.7 条件运算符 109

4.7.1 条件运算符的基本使用 109

4.7.2 条件运算符的嵌套使用 110

4.7.3 条件运算符的灵活使用 111

4.8 返回数据类型运算符 114

4.9 其他运算符 116

4.10 运算符优先级 117

4.11 小结 119

第5章 JavaScript结构语句 120

5.1 基本结构语句 120

5.2 条件结构语句 121

5.2.1 if条件结构语句 121

5.2.2 if…else条件结构语句 124

5.2.3 if…else if条件结构语句 126

5.2.4 嵌套if条件结构语句 128

5.2.5 switch条件结构语句 130

5.2.6 巧用switch语句实现特定功能 135

5.3 循环结构语句 138

5.3.1 for循环结构语句 138

5.3.2 嵌套for循环结构语句 142

5.3.3 for-in循环结构语句 144

5.3.4 while循环结构语句 146

5.3.5 do…while循环结构语句 150

5.4 跳转结构语句 154

5.4.1 break跳转结构语句 154

5.4.2 continue跳转结构语句 158

5.4.3 标签跳转结构语句 161

5.5 异常处理语句 164

5.5.1 try…catch…finally异常处理语句 165

5.5.2 throw抛出异常语句 167

5.6 使用with语句进行对象操作 169

5.7 小结 170

第6章 JavaScript函数 171

6.1 全局函数 171

6.1.1 eval函数 171

6.1.2 escape函数和unescape函数 173

6.1.3 NaN和isNaN函数 175

6.1.4 infinity和isFinite函数 177

6.1.5 parseInt函数和parseFloat函数 178

6.2 自定义函数 178

6.2.1 定义函数 178

6.2.2 调用函数 181

6.2.3 函数参数 185

6.2.4 函数返回值 190

6.3 函数对象 194

6.3.1 创建函数 195

6.3.2 函数对象的属性 196

6.3.3 函数对象的方法 201

6.4 小结 202

第2篇 实战提高 204

第7章 初级开发与调试 204

7.1 管理源代码 204

7.1.1 建立项目文件夹 204

7.1.2 HTML文件与JS文件 204

7.1.3 文件命名的风格 205

7.2 代码排版风格 205

7.2.1 坏风格和好风格 205

7.2.2 代码行限制 207

7.2.3 用Tab制表符缩进 208

7.2.4 折行原则 210

7.2.5 无处不在的空格与空行 210

7.2.6 花括号的位置 211

7.2.7 编辑工具的自动格式化 211

7.3 命名风格 212

7.3.1 变量、函数的命名 212

7.3.2 for循环中的局部变量命名 213

7.3.3 区分全局变量和局部变量 213

7.3.4 常量用大写 215

7.4 注释风格 215

7.4.1 Java风格注释 215

7.4.2 Dojo风格注释 216

7.5 编写工具 218

7.5 1 文本工具 218

7.5.2 高级文本工具 219

7.5.3 网页制作软件 225

7.6 调试工具 227

7.6.1 JavaScript调试的困境 228

7.6.2 使用Firefox的“错误控制台” 230

7.6.3 使用alert调试 231

7.7 小结 233

第8章 Number对象 234

8.1 Number对象的简介和语法 234

8.1.1 Number对象简介 234

8.1.2 Number对象语法 234

8.2 Number对象的属性 235

8.2.1 JavaScript的处理范围 236

8.2.2 如何表示大于最大值的数 236

8.2.3 如何表示小于最小值的数 237

8.2.4 判断是否为数字 238

8.2.5 为Number对象添加属性和方法 239

8.3 Number对象的方法 240

8.3.1 将数值转换成指数形式 240

8.3.2 保留多少位小数的方法 241

8.3.3 保留多少位数值的方法 242

8.3.4 获取Number对象数值 243

8.3.5 获取Number对象字符值 245

8.3.6 Number对象的浏览器问题 247

8.4 小结 248

第9章 String对象 249

9.1 String对象的简介和语法 249

9.1.1 String对象简介 249

9.1.2 String对象语法 250

9.1.3 转义字符 251

9.2 字符串比较 253

9.2.1 简单比较是否相等 254

9.2.2 字典式比较 256

9.3 对字符串中字符的操作 257

9.3.1 字符数量 258

9.3.2 求指定位置字符 259

9.3.3 求指定位置字符的Unicode编码 260

9.3.4 使用substring方法获取多个字符 261

9.3.5 使用slice方法获取多个字符 262

9.3.6 使用substr方法获取多个字符 263

9.3.7 使用indexOf方法获取指定字符 264

9.3.8 使用lastIndexOf方法获取指定字符 266

9.4 对字符串的操作 268

9.4.1 拼接字符串 268

9.4.2 转换大小写 269

9.4.3 获取字符串值 270

9.5 格式化字符串 270

9.5.1 创建锚点 270

9.5.2 创建超链接 271

9.5.3 改变字符串相对大小 272

9.5.4 改变字符串样式 273

9.5.5 改变字符串位置 274

9.5.6 设置字符串大小 275

9.5.7 设置字符串颜色 277

9.5.8 嵌套使用方法 277

9.6 小结 278

第10章 Math对象 279

10.1 Math对象语法 279

10.2 Math对象属性 279

10.2.1 直接属性 280

10.2.2 运算属性 281

10.3 Math对象方法 283

10.3.1 生成随机数 283

10.3.2 截断方法 287

10.3.3 求最大值和最小值 289

10.3.4 绝对值计算 291

10.4 小结 292

第11章 Array数组对象 293

11.1 数组对象语法 293

11.1.1 创建数组 293

11.1.2 数组长度 297

11.1.3 数组下标 302

11.1.4 数组索引 305

11.1.5 多维数组 308

11.2 对数组的操作 311

11.2.1 连接数组 311

11.2.2 指定数组的分隔字符 313

11.2.3 截取数组 314

11.3 对数组元素的操作 316

11.3.1 对数组元素进行排序 316

11.3.2 倒序数组元素 319

11.3.3 添加和删除数组元素 321

11.3.4 删除指定数量的数组元素 324

11.4 自定义数组方法 326

11.4.1 查找数组元素 326

11.4.2 包含数组元素 329

11.4.3 复制数组 330

11.4.4 插入新数组元素 332

11.5 小结 335

第12章 Date对象 336

12.1 Date对象语法 336

12.1.1 创建Date对象 336

12.1.2 使用属性和方法 340

12.2 Date对象方法 340

12.2.1 Date对象的获取方法 340

12.2.2 Date对象的设置方法 342

12.2.3 Date对象的返回值 344

12.2.4 对象调用方法 346

12.3 Date对象的计算 347

12.4 显示日期和时间 348

12.4.1 显示当前日期和时间 348

12.4.2 显示英文月份和中文星期 349

12.4.3 显示计时器和倒计时 351

12.4.4 显示日期时间事件 352

12.4.5 显示日期时间提示 355

12.5 小结 357

第13章 Window对象 358

13.1 打开和关闭窗口 358

13.1.1 打开窗口 358

13.1.2 打开窗口属性设置 362

13.1.3 关闭窗口 364

13.2 对话框 366

13.2.1 信息对话框 366

13.2.2 选择对话框 370

13.2.3 提示对话框 375

13.3 对窗口的操作 380

13.3.1 移动窗口 380

13.3.2 缩放窗口 381

13.3.3 滚动窗口 383

13.3.4 打印窗口内容 383

13.3.5 窗口状态栏 385

13.4 定时设置 386

13.4.1 循环定时 386

13.4.2 延时定时 387

13.5 窗口事件 389

13.5.1 文档载入事件 390

13.5.2 关闭窗口事件 391

13.5.3 窗口焦点事件 392

13.5.4 窗口缩放事件 394

13.5.5 错误事件 396

13.6 小结 399

第14章 Document对象 400

14.1 文档中的对象 400

14.1.1 HTML元素 400

14.1.2 锚点和超链接 404

14.1.3 背景和文本 407

14.1.4 图像 408

14.1.5 表单 409

14.2 文档中内容 410

14.2.1 上次修改时间 410

14.2.2 文档定位 412

14.2.3 文档标题 415

14.3 对文档的操作 416

14.3.1 向文档中输入 416

14.3.2 打开和关闭文档 419

14.3.3 清除文档 422

14.4 文档事件 422

14.4.1 鼠标事件 422

14.4.2 键盘事件 427

14.5 小结 430

第15章 Form表单对象 431

15.1 表单对象 431

15.1.1 访问表单对象及元素对象 431

15.1.2 设置表单对象 434

15.2 按钮对象 436

15.2.1 公用内容 436

15.2.2 普通按钮 438

15.2.3 提交按钮 440

15.2.4 重置按钮 442

15.2.5 图片按钮 443

15.3 文本框对象 444

15.3.1 单行文本框 444

15.3.2 密码框 449

15.3.3 隐藏输入对象 450

15.3.4 多行文本框 451

15.4 复选框和单选按钮 452

15.4.1 复选框 452

15.4.2 单选按钮 455

15.5 列表对象 459

15.5.1 select框对象 460

15.5.2 option选项对象 466

15.6 文件上传对象 471

15.7 小结 473

第16章 event事件对象 474

16.1 键盘按键 474

16.1.1 特殊按键 474

16.1.2 左特殊按键 477

16.1.3 获取具体按键 479

16.2 鼠标操作 482

16.2.1 鼠标按键 482

16.2.2 鼠标操作对象 485

16.3 鼠标指针位置 487

16.3.1 相对屏幕位置 487

16.3.2 相对浏览器位置 488

16.3.3 相对事件容器位置 490

16.4 小结 490

第17章 JavaScript其他对象 491

17.1 frame框架对象 491

17.1.1 创建frame框架对象 491

17.1.2 对框架对象的操作 493

17.1.3 对框架对象的访问 495

17.1.4 框架间访问 497

17.2 history历史对象 498

17.3 location对象 500

17.3.1 获取具体信息 500

17.3.2 location对象操作 502

17.4 navigator浏览器对象 505

17.5 screen屏幕对象 506

17.6 小结 507

第18章 CSS在JavaScript中的应用 508

18.1 CSS基础 508

18.1.1 基本格式 508

18.1.2 CSS注释 510

18.1.3 属性值单位 511

18.2 CSS属性 512

18.2.1 字体属性 513

18.2.2 文本属性 514

18.2.3 背景属性 515

18.2.4 边框属性 517

18.2.5 边界属性 518

18.2.6 填充属性 519

18.3 CSS定义方式 519

18.3.1 行内方式 520

18.3.2 外部链接方式 520

18.3.3 定义和使用样式类 522

18.3.4 定义和使用ID选择符 525

18.4 小结 526

第3篇 高级应用 528

第19章 面向对象编程 528

19.1 面向对象基础 528

19.1.1 “对象(Object)”和“类(Class)” 528

19.1.2 属性与方法 529

19.1.3 封装、多态性和继承 530

19.2 使用Object类建立对象 531

19.2.1 关于Object类 531

19.2.2 Obiect类的属性和方法 532

19.2.3 构造一个Object对象 532

19.2.4 为对象添加新的方法 533

19.2.5 this关键字 535

19.2.6 构造对象的函数 536

19.3 深入Object对象 539

19.3.1 用循环获取对象的属性 539

19.3.2 用prototype实现JavaScript的扩展 540

19.3.3 增强String的功能 543

19.3.4 toString()方法 543

19.3.5 重载toString()方法 544

19.3.6 toSource()方法 545

19.3.7 用watch()方法自定义监听事件 546

19.4 类的定义 548

19.4.1 定义一个新的类 548

19.4.2 定义类的方法(method) 550

19.4.3 类的继承 551

19.5 this详解 553

19.5.1 HTML中的this 553

19.5.2 事件方法中的this 554

19.5.3 类定义中的this 556

19.5.4 CSS的expression中的this 557

19.5.5 内部函数的this 557

19.6 文字记号法 558

19.6.1 用文字记号法创建数组 558

19.6.2 创建哈希表(Hashtable) 558

19.6.3 用文字记号法创建对象 559

19.6.4 用文字记号法定义对象的“方法” 560

19.6.5 用文字记号法为函数传递复合参数 561

19.7 小结 562

第20章 DOM对象 563

20.1 DOM概述 563

20.1.1 什么是DOM 563

20.1.2 DOM的节点树 564

20.1.3 HTML中的DOM对象 565

20.1.4 页面的DOM结构 566

20.2 访问DOM节点 567

20.2.1 HTML文档的节点 567

20.2.2 document对象的常用方法 567

20.2.3 Element节点的属性和方法 568

20.2.4 用DOM操作HTML文档 568

20.2.5 递归遍历节点树 569

20.2.6 递归的原理 571

20.2.7 通过getElementsByTagName获得节点 572

20.2.8 递归与getElementsByTagName的比较 572

20.2.9 遍历其他框架页面的DOM对象 573

20.2.10 遍历其他窗口的DOM对象 576

20.2.11 以ID获取一个节点对象 577

20.2.12 以NAME获取一个节点对象 579

20.2.13 用document.all[]获取DOM对象 581

20.2.14 以class获取节点对象 581

20.3 修改DOM节点实现动态HTML 582

20.3.1 通过事件实现动画效果 582

20.3.2 添加和删除元素节点 585

20.3.3 createElement方法 587

20.3.4 appendChild方法 588

20.3.5 设置元素节点的属性 588

20.3.6 获取父级节点 589

20.3.7 删除子节点 589

20.3.8 firstChild属性和lastChild属性 590

20.3.9 设置对象的层级样式(CSS Style) 591

20.3.10 添加和删除文本节点 592

20.3.11 outerHTML、innerHTML和innerTEXT 594

20.4 小结 598

第21章 Web 2.0调试与测试 599

21.1 调试与测试的区别 599

21.2 用Firebug调试JavaScript 600

21.2.1 安装Firebug 600

21.2.2 调试的3大法宝 604

21.2.3 使用Firebug的控制台(Console) 604

21.2.4 使用DOM查看器 608

21.2.5 用DOM查看器监测对象属性 609

21.2.6 设置断点 610

21.3 JsUnit做自动化单元测试 617

21.3.1 什么叫单元测试 617

21.3.2 JsUnit的功能 617

21.3.3 安装JsUnit 617

21.3.4 运行测试的界面 618

21.3.5 测试页和测试函数 619

21.3.6 使用assert函数检验结果 621

21.3.7 setUp()函数和tearDown()函数 623

21.3.8 setUpPage()函数和tearDownPage()函数 627

21.3.9 建立测试组(Test Suite) 627

21.4 小结 628

第22章 Ajax 629

22.1 Ajax概述 629

22.1.1 什么叫Ajax 629

22.1.2 什么叫异步传输 629

22.1.3 Ajax的演变 630

22.1.4 真正的Ajax 631

22.1.5 Ajax的优点 632

22.1.6 Ajax的缺点 632

22.1.7 Ajax所涉及的技术 633

22.2 Ajax基础 633

22.2.1 HTTP请求(Requests)和响应(Responses) 634

22.2.2 HTTP请求的数据格式 634

22.2.3 HTTP响应的数据格式 636

22.2.4 隐藏IFrame实现Ajax 637

22.2.5 XMLHttp的HTTP请求 641

22.2.6 处理服务器响应 643

22.2.7 与XML协同 646

22.2.8 Ajax实现的自动保存 647

22.3 Dojo Ajax工具箱 649

22.3.1 Dojo简介 649

22.3.2 Dojo的文件结构 649

22.3.3 Dojo的程序结构 650

22.3.4 安装Dojo 650

22.3.5 开始使用Dojo 651

22.3.6 建立一个按钮小部件(Widget) 651

22.3.7 使用dojo.require装载模块 652

22.3.8 兼容HTML标签 652

22.3.9 建立事件 652

22.3.10 使用dojo.xhrGet实现Ajax 653

22.3.11 用GET发送数据给服务器 655

22.3.12 使用dojo.byId()获取指定的DOM对象 656

22.3.13 服务器端的代码 656

22.3.14 用POST方式发送数据给服务器 657

22.3.15 修改服务器端的代码 658

22.4 Prototype框架 659

22.4.1 Prototype框架简介 659

22.4.2 安装设置Prototype 660

22.4.3 使用$()方法 660

22.4.4 使用$F()方法 662

22.4.5 使用Try.these()方法 663

22.4.6 Ajax对象选项 664

22.4.7 Prototype的回调事件 664

22.4.8 参数和HTTP方式 665

22.4.9 全局响应器 666

22.4.10 用Ajax.Updater更新动态页面 666

22.4.11 用Ajax.PeriodicalUpdater自动发送请求 667

22.5 小结 668

第23章 XML与JSON 669

23.1 XML 669

23.1.1 XML与XHTML、HTML 669

23.1.2 IE中的XML DOM 669

23.1.3 使用load()装载XML数据 671

23.1.4 使用loadXML()装载XML数据 671

23.1.5 遍历XML DOM 671

23.1.6 XML DOM的getElementsByTagName() 674

23.1.7 获取XML代码 677

23.1.8 使用createElement()建立节点 678

23.1.9 删除、替换和插入节点 678

23.1.10 捕捉XML错误 679

23.1.11 Firefox中的XML DOM 681

23.1.12 Firefox中装载XML数据 681

23.1.13 Firefox中获得XML代码 682

23.1.14 Firefox中捕捉XML错误 682

23.1.15 跨浏览器的XML 683

23.2 XPath 684

23.2.1 XPath概述 684

23.2.2 IE中的XPath 685

23.2.3 Firefox中的XPath 686

23.3 Ajax与JSON 689

23.3.1 什么叫JSON 689

23.3.2 JSON与XML 689

23.3.3 JSON解码 690

23.3.4 JSON的安全性 693

23.3.5 JSON编码 693

23.4 小结 694

第24章 综合案例 695

24.1 跟随鼠标的彩色文字 695

24.2 烟花效果的下拉菜单 697

24.3 网络导航条 700

24.4 类似QQ的菜单 702

24.5 三级联动菜单 704

24.6 实现关机效果的界面 706

24.7 Ajax效果:字符串过滤 708

24.8 Ajax效果:可拖拽的表格 710

24.9 拖动表格行改变顺序 714