本书主要介绍了运用JavaScript搭配DHTML技术进行Web开发和Web设计的原则和技巧。全书内容以条目形式罗列,覆盖了在Web开发和Web设计中综合运用JavaScript和DHTML技术实现各种实用功能的技术和技巧,示例丰富、实用性强、便于查阅。本书相对于第1版,对Web 2.0和Ajax技术架构进行了全面更新,增加了对Web 2.0应用开发和Ajax技术的深入阐述和精彩的技巧讲解。
本书适合Web开发人员、Web设计人员、网站架构师阅读和参考。
前言 I
第1章 字符串 1
1.0 引言 1
1.1 连接字符串 4
1.2 提高字符处理的性能 6
1.3 访问子串 7
1.4 改变字符串的大小写 8
1.5 检验两个字符是否相等 9
1.6 不使用正则表达式检验字符串的包含关系 11
1.7 使用正则表达式检验字符串的包含关系 13
1.8 查找和替换子字符串 14
1.9 特殊字符和转义字符的应用 15
1.10 cookies的读写 17
1.11 Unicode值和字符的互相转换 20
1.12 URL字符串的编码和解码 21
1.13 Base64字符串的编码和解码 23
第2章 数字和日期 27
2.0 引言 27
2.1 数字和字符串的互相转换 31
2.2 检验数字的有效性 33
2.3 检验数字的相等 34
2.4 浮点小数的取整 35
2.5 为文本显示指定数字格式 36
2.6 十进制和十六进制之间的互相转换 39
2.7 生成伪随机数字 41
2.8 三角函数的计算 41
2.9 创建Date对象 42
2.10 过去或将来日期的计算 43
2.11 计算两个日期之间的天数 45
2.12 验证日期 47
第3章 数组和对象 51
3.0 引言 51
3.1 创建简单的数组 54
3.2 创建多维数组 56
3.3 数组和字符串之间的转换 57
3.4 操作数组元素 59
3.5 简单数组的排序 61
3.6 合并数组 63
3.7 分解数组 64
3.8 创建自定义对象 65
3.9 用于快速数组查询的模拟哈希表 69
3.10 对象属性的处理 71
3.11 对象数组的排序 72
3.12 自定义对象的原型 74
3.13 把数组和自定义对象转换成字符串 79
3.14 使用对象减少命名冲突 82
第4章 变量、函数和流程控制 85
4.0 引言 85
4.1 创建JavaScript变量 85
4.2 创建命名函数 89
4.3 嵌套命名函数 92
4.4 创建匿名函数 93
4.5 延迟函数的调用 94
4.6 条件分支 97
4.7 漂亮地处理脚本错误 101
4.8 提高脚本的性能 103
第5章 浏览器特性检测 107
5.0 引言 107
5.1 检测浏览器的种类 113
5.2 检测早期的浏览器版本 113
5.3 检测Internet Explorer的版本 115
5.4 检测Mozilla的版本 116
5.5 检测Safari的版本 118
5.6 检测Opera的版本 119
5.7 检测客户端的操作系统 120
5.8 检测对象支持 121
5.9 检测对象属性和方法的支持 124
5.10 检测W3C DOM标准的支持 126
5.11 检测浏览器的书写语言 127
5.12 检测Cookie的是否可用 128
5.13 为特定浏览器或属性定义链接 129
5.14 多个浏览器版本的检验 130
第6章 管理浏览器窗口 132
6.0 引言 132
6.1 在浏览器窗口控制受限的环境下生存 135
6.2 设置主窗口的尺寸 136
6.3 主窗口定位 137
6.4 最大化主窗口 138
6.5 创建新窗口 139
6.6 将窗口置前 143
6.7 与新窗口进行通信 144
6.8 与主窗口进行通信 147
6.9 使用IE的模态/非模态窗口 148
6.10 模拟跨浏览器的模态对话框 151
6.11 用层模拟窗口 158
第7章 管理多个框架 173
7.0 引言 173
7.1 在新的框架组中创建空白框架 178
7.2 从其他框架中改变框架的内容 179
7.3 同时改变多个框架的内容 181
7.4 用单一页面替换框架组 182
7.5 避免被其他网站“加框” 183
7.6 确保页面加载到自己的框架组 184
7.7 读取框架的尺寸 187
7.8 设置框架的尺寸 188
7.9 动态设置框架组的规格 192
第8章 动态表单 194
8.0 引言 194
8.1 自动在第一个文本域聚焦 197
8.2 常见的文本域检验 198
8.3 在验证失败时阻止表单提交 204
8.4 自动聚焦到无效的文本域输入 207
8.5 使用自定义验证对象 208
8.6 改变表单的动作 213
8.7 封锁回车键的提交.. 214
8.8 通过回车键移动文本域的焦点 215
8.9 在文本框中输入回车键来提交表单 216
8.10 禁用表单控件 217
8.11 隐藏和显示表单控件 219
8.12 仅允许在文本框中输入数字(或字母) 221
8.13 在固定长度的文本框中自动移动焦点 223
8.14 改变select元素的内容 224
8.15 页面间表单数据的复制 227
第9章 管理事件 231
9.0 引言 231
9.1 等价使用IE和W3C的事件模型 236
9.2 在页面加载之后初始化 240
9.3 添加多个load事件处理 242
9.4 判断点击事件的坐标 244
9.5 阻止事件执行默认行为 248
9.6 阻止重复点击 251
9.7 判断哪个元素收到事件 252
9.8 判断哪个鼠标按键被按下 254
9.9 读取被按下的字符键 256
9.10 读取被按下的非字符键 257
9.11 在事件中判断哪个辅助键被按下 260
9.12 判断光标移出/移入的元素 262
9.13 与事件同步播放声音 266
第10章 页面导航技术 268
10.0 引言 268
10.1 加载新页面或锚点 271
10.2 避免页面进入浏览器历史 273
10.3 将select元素用于导航 274
10.4 通过Cookie在页面之间传递数据 276
10.5 通过框架在页面之间传递数据 278
10.6 通过URL在页面之间传递数据 280
10.7 创建上下文(右键)菜单 283
10.8 创建下拉式导航菜单 291
10.9 创建导航踪迹菜单 305
10.10 创建可展开菜单 308
10.11 建立可折叠的XML菜单 320
第11章 管理样式表 331
11.0 引言 331
11.1 从全局给元素指定样式表规则 333
11.2 为一组元素指定样式表规则 334
11.3 为单独的元素指定样式表规则 336
11.4 导入外部样式表 337
11.5 针对浏览器或操作系统导入样式表 338
11.6 在加载之后更改导入的样式表 340
11.7 启用/禁用样式表 341
11.8 切换元素的样式表 342
11.9 覆盖样式表规则 343
11.10 将任意内容转变成带有样式的元素 344
11.11 创建居中的body元素 345
11.12 读取有效样式表属性值 346
11.13 强制浏览器使用标准模式 348
第12章 静态内容的视觉效果 351
12.0 引言 351
12.1 预读图像 354
12.2 在鼠标移过时切换图像 356
12.3 减少JavaScript下载的切换图像 358
12.4 使用CSS减少切换图像的下载 362
12.5 动态改变图像大小 366
12.6 改变文本样式属性 367
12.7 让用户选择正文的文字大小 370
12.8 创建自定义链接样式 374
12.9 改变页面背景色和图像 375
12.10 隐藏和显示元素 378
12.11 调整元素透明度 379
12.12 创建过渡视觉效果 381
12.13 在canvas元素中绘制图表 385
第13章 HTML元素定位 392
13.0 引言 392
13.1 让元素在文档空间中可定位 397
13.2 定位元素与body元素的联系 398
13.3 通过DHTML函数库控制定位 400
13.4 选择div和span容器 407
13.5 调整定位元素的叠放顺序(Z-order) 409
13.6 使元素在另一个元素上方居中 410
13.7 在窗口或框架中使元素居中 412
13.8 判断未定位元素的位置 414
13.9 让元素沿直线运动 415
13.10 让元素沿圆形路径移动 419
13.11 创建可拖动的元素 421
13.12 滚动div的内容 426
13.13 创建自定义滚动条 432
13.14 创建滑块控件 445
第14章 创建动态内容 452
14.0 引言 452
14.1 在页面加载时写入动态内容 453
14.2 动态创建新的页面内容 454
14.3 包含外部HTML内容 456
14.4 嵌入XML数据 458
14.5 用JavaScript对象嵌入数据 460
14.6 将XML数据转换到HTML表格中 463
14.7 将JavaScript对象转换成HTML表格 466
14.8 将XML结点树转换成JavaScript对象 469
14.9 创建新的HTML元素 470
14.10 为新元素创建文本内容 473
14.11 创建混合的元素和文本结点 474
14.12 插入并填充iframe元素 476
14.13 获取HTML元素对象的引用 478
14.14 引用所有同类的元素 480
14.15 替换部分正文内容 482
14.16 删除正文内容 483
14.17 使用XMLHttpRequest进行REST请求 485
14.18 使用XMLHttpRequest进行SOAP调用 488
14.19 排序动态表格 491
14.20 遍历文档结点树 494
14.21 捕获文档内容 498
第15章 动态内容的应用 500
15.0 引言 500
15.1 显示随机格言 501
15.2 将用户选择区域转换为任意元素 504
15.3 自动查找替换正文内容 506
15.4 设计用户可以编辑的内容页面 512
15.5 创建幻灯片 515
15.6 自动滚动页面 523
15.7 根据用户的时间进行问候 524
15.8 显示距离圣诞节的天数 525
15.9 显示倒计时 527
15.10 创建基于日历的日期选择控件 534
15.11 显示动画进度条 542
附录A 键盘事件的字符值 548
附录B 键盘的按键编码值 550
附录C ECMAScript保留关键字 552
索引 553
AutoCAD 2016中文版建筑设计师——装潢施工设计篇 本书特色 本书以敏锐的视角、简练的语言,并结合室内装潢业的特点,运用大量的室内装潢施工设计实例,对A...
解析iOS设计模式的开山之作优化Objective-C编程实践的必修宝典由此迈入移动开发高手行列本书讲述如何在代码中应用创建型模式、结
《工匠革命:制造业的精神与文化变迁》内容简介:本书从人类制造业的历史演化及其文化变迁出发,对工匠精神的起源、形成与发展进行
《战后日本能源安全保障研究》内容简介:战后以来日本在不同阶段都遇到了不同形式的能源约束问题,但是都未成为其经济发展的长期约
《软件调试实战》主要讲述C/C++程序的调试和分析,书中的调试技术也可以应用于其他语言编写的程序。《软件调试实战》在讲述简单的
《电脑时代的先锋》内容简介:人类学家玛格丽特·米德认为,人类发展的历史将经历三种不同的文化:前喻文化是后代人必须向前代人
管理信息系统-(第2版) 本书特色 王要武编著的《管理信息系统(第2版高等学校信息管理示范教材)》系统全面介绍了管理信息系统相关知识,本书既可作为高等学校管理类...
《Oracle 18c 必须掌握的新特性:管理与实战》内容简介:在Oracle 12c版本之前,数据库版本的迭代中基本架构都没有非常明显的变化,
信息系统项目管理师考试辅导-(针对下午考试) 内容简介 本书按照人力资源和社会保障部、工业和信息化部全国计算机技术与软件专业技术资格(不平)考试要求编写。作者依...
本书是经典著作《Linux设备驱动程序》的第三版。如果您希望在Linux操作系统上支持计算机外部设备,或者在Linux上运行新的硬件,或
本书是著名作者WilliamStallings力作之一,以无线连网为主题,以无线通信与连网的技术和标准为重点,讲述了连网技术与体系结构、
《神经科学研究与进展•神经科学MATLAB教程:MATLAB科学计算导论(英文)(导读版)》内容简介:作为科学计算的数学软件,Matlab被广泛
《增长密码:大型网站百万流量运营之道》内容简介:本书是作者在SEO行业12年成功经验的总结。对于大型网站的流量运营方法,作者以S
程序员增值合订本2002 本书特色 全套合订本适合开发者、项目经理 CTO&CIO、编程爱好者阅读收藏内含:精装大16开上、下两册,52个印张,832页,另附配...
《服务设计:用极致体验赢得用户追随》内容简介:服务设计不只是设计服务,更是设计与服务相关的整个商业系统。服务设计包括表层的
《襄言随语:地方经济社会科学发展与改革创新》内容简介:本书是作者在湖北省襄阳市及随州市任职期间公开发表的讲话、报告、随笔集
《数据中台:赋能企业实时经营与商业创新》内容简介:随着数字化的浪潮席卷而来,无论是个人还是企业,相信都已经真切地感受到了数
《大学生创业价值观教育研究》内容简介:开展行之有效的创业价值观教育,更好地引导民众将先进的创业理念内化为个体的思维方式、外
《不教一日闲过:回忆齐白石》内容简介:齐白石是融诗、书、画、印为一体的艺术大师,是二十世纪唯一被选为世界文化名人的中国艺术
《高校日常思想政治教育研究》内容简介:日常思想政治教育作为高校思想政治教育的重要组成部分,既是新时代高校落实立德树人根本任