本文档主要讲述的是JSF入门深入学习;JSF为JAVA的 Web应用用户界面的开发人员提供了标准的编程接口、丰富可扩展的UI组件库(一个核心的JSP标记库用来处理事件、执行验证以及其他非UI相关的操作和一个标准的HTML 标记库来表示 UI组件)、事件驱动模型等一套完整的Web应用框架,通过 JSF ,您可以在页面中轻松自如地使用 WEB 组件、捕获用户行为所产生的事件、执行验证、建立页面导航…,当使用支持JSF的开发工具来开发 JSF 应用的时候,一切将会变得异常简单,GUI方式拖放组件、修改组件属性、建立组件间关联以及编写事件侦听器等等。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
<p> 本文档主要讲述的是jquery插件特效;jQuery 是继 prototype 之后又一个优秀的 Javascript 框架。其宗旨是—写更少的代码,做更多的事情。 </p> <p> jQuery 是一个快速的,简洁的 javaScript 库,使用户能更方便地处理 HTML documents、events、实现动画效果,并且方便地为网站提供 AJAX 交互。 jQuery 还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。 希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看 </p>
本文档主要讲述的是jQuery Flash效果插件;jQuery是一个快速易用的JavaScript 框架,甚至只用几行代码就可以实现各种Ajax、动画、滤镜效果。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
本文档主要讲述的是JavaScript原生数组函数探索;在JavaScript中,可以通过两种方式创建数组,构造函数和数组直接量, 其中后者为首选方法。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
<p class="MsoNormal" align="center" style="text-align:center;"> <b>JavaScript验证表单</b><b></b> </p> <p class="MsoNormal"> <b> </b> </p> <p class="MsoNormal"> <b>1. 长度限制</b><b><br /> </b><script><br /> function test() <br /> {<br /> if(document.a.b.value.length>50)<br /> {<br /> alert("不能超过50个字符!");<br /> document.a.b.focus();<br /> return false;<br /> }<br /> }<br /> </script> </p>
本文档主要讲述的是JavaScript的RegExp对象;JavaScript的RegExp对象和String对象定义了使用正则表达式来执行强大的模式匹配和文本检索与替换函数的方法。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
<p> <strong>Highcharts </strong>是一个用纯JavaScript编写的一个图表库。Highcharts 能够很简单便捷的在web网站或是web应用程序添加有交互性的图表。本文给大家带来Highcharts参考手册,需要的可以来下载 </p> <p> Highcharts 免费提供给个人学习、个人网站和非商业用途使用。 </p> <p> <strong>HighCharts 特性<br /> </strong>兼容性 - 支持所有主流浏览器和移动平台(android、iOS等)。<br /> 多设备 - 支持多种设备,如手持设备 iPhone/iPad、平板等。<br /> 免费使用 - 开源免费。<br /> 轻量 - highcharts.js 内核库大小只有 35KB 左右。<br /> 配置简单 - 使用 json 格式配置<br /> 动态 - 可以在图表生成后修改。<br /> 多维 - 支持多维图表<br /> 配置提示工具 - 鼠标移动到图表的某一点上有提示信息。<br /> 时间轴 - 可以精确到毫秒。<br /> 导出 - 表格可导出为 PDF/ PNG/ JPG / SVG 格式<br /> 输出 - 网页输出图表。<br /> 可变焦 - 选中图表部分放大,近距离观察图表;<br /> 外部数据 - 从服务器载入动态数据。<br /> 文字旋转 - 支持在任意方向的标签旋转。 </p>
本文档主要讲述的是AngularJS前端框架特性介绍;AngularJS (Angular.JS) 是一组用来开发Web页面的框架、模板以及数据绑定和丰富UI组件。它支持整个开发进程,提供web应用的架构,无需进行手工DOM操作。 AngularJS很小,只有60K,兼容主流浏览器,与 jQuery 配合良好。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
<p> <strong>AngularJS</strong>是一个 JavaScript 框架。它可通过 <script> 标签添加到 HTML 页面。本文主要给大家带来AngularJS参考手册,需要的朋友们可以下载看看! </p> <p> AngularJS通过 指令 扩展了 HTML,且通过 表达式 绑定数据到 HTML。 </p> <p> AngularJS是一个 JavaScript 框架<br /> AngularJS是一个 JavaScript 框架。它是一个以 JavaScript 编写的库。 </p> <p> AngularJS是以一个 JavaScript 文件形式发布的,可通过 script 标签添加到网页中: </p>
很多用户都是找javascript中文手册的,因为很少有javascript的中文手册,一般都是微软官方出的这个手册。这次给大家带来的就是微软官方《JavaScript语言参考》<br /> 1、w3cschool的JavaScript 教程<br /> 2、css8 发布的javascript参<br /> 3、javascript-cheat-sheet<br /> 4、微软Jscript手册
软件技术文档,WEB应用开发。本文并不是一本集中讨论JavaScript 的读物。只是一本入门向导的快餐式的读物,适合初学者。 <br /> 主要的内容: <br /> ◆ 简单介绍JavaScript 语言,JavaScript 所处理的对象――属性和方法; <br /> ◆ JavaScript 代码加入HTML 文档中的方法; <br /> ◆ JavaScript 最常用情景的一个例子――验证用户输入; <br /> ◆ JavaScript 的文档对象模型图; <br /> ◆ JavaScript 的字符串对象和日期对象; <br /> ◆ 窗口对象和框架窗口(FrameSet、IFrame); <br /> ◆ 正则表达式的模式(Pattern)匹配――验证用户输入; <br /> ◆ 可参考的JavaScript 代码:预载入图片实现导航按钮的动态变化效果; <br /> ◆ 可参考的JavaScript 代码:显示对象的提示信息; <br /> ◆ 可参考的JavaScript 代码:精美的日历; <br /> ◆ 可参考的JavaScript 代码:下拉菜单; <br /> ◆ 可参考的JavaScript 代码:类似于资源管理器的树图; <br /> ◆ 可参考的JavaScript 代码:一个所见所得的编辑器;
jQuery 1.3自从2008年1月14日发布后,后引来了各界的关注。我们也随即投入到翻译文档的工作中来。经过4天的努力,终于完工了。 由于赶上中国农历新年,本人未能及时制作成CHM版本,特意在开工的当天将其整理完成,由于时间赶的比较急,难免会有错误,如发现错误,请联系本人,我将会及时修正。 <br /> 自从jQuery面世以来,它以其快速、简洁,能够很轻易地处理HTML文档、控制事件、给页面添加动画和Ajax效果等打动着所有关注它的人的心,本人也不例外,但长期以来,类似与本手册的(带查询功能),仅仅只有kuomart(这里不太清楚具体名称,仅仅从本人拥有的手册上找到这个名称,暂时先这样称呼,如有知道请告知!)制作的,但长期没有更新,给大家学习jQuery带来不便。为方便自己也为方便所有爱好jQuery的朋友,本人将CHM重新整理,并和jQuery中文API的整理者 Shawphy 同步更新本CHM手册,以便大家能及时了解其最新资讯!由于本人精力有限,难免出现差错,请谅解并告知 Email !
面向对象程序设计(Object-oriented programming,OOP)是一种程序设计范型,同时也是一种程序开发的方法。对象指的是类的实例。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性。
这本书是属于通用的JavaScript规范教程,适合高级、中级、初级等不同层次的开发者阅读。这本书将向我们介绍JavaScript和JScript相关的知识,包括基本概念、对象、函数等。也可作为一本参考书。
<p> <span>目录 </span> </p><p> 第一部分 概论<br /> 第1章 从零开始<br /> 1.1 为什么选择JavaScript? <br /> 1.1.1 用户的偏好--B/S模式 <br /> 1.1.2 在什么情况下用JavaScript <br /> 1.1.3 对JavaScript的一些误解 <br /> 1.1.3.1 JavaScript和Java的关系 <br /> 1.1.3.2 披着C外衣的Lisp <br /> 1.1.3.3 关于JavaScript的思维定势 <br /> 1.1.3.4 JavaScript是为业余爱好者设计的? <br /> 1.1.3.5 JavaScript是面向对象的吗 <br /> 1.1.3.6 其他误解 <br /> 1.1.4 警惕!脚本诱惑 <br /> 1.1.5 隐藏在简单表象下的复杂度 <br /> 1.1.6 令人迷惑的选择--锦上添花还是雪中送炭 第一部分 概论<br /> 第1章 从零开始<br /> 1.1 为什么选择JavaScript? <br /> 1.1.1 用户的偏好--B/S模式 <br /> 1.1.2 在什么情况下用JavaScript <br /> 1.1.3 对JavaScript的一些误解 <br /> 1.1.3.1 JavaScript和Java的关系 <br /> 1.1.3.2 披着C外衣的Lisp <br /> 1.1.3.3 关于JavaScript的思维定势 <br /> 1.1.3.4 JavaScript是为业余爱好者设计的? <br /> 1.1.3.5 JavaScript是面向对象的吗 <br /> 1.1.3.6 其他误解 <br /> 1.1.4 警惕!脚本诱惑 <br /> 1.1.5 隐藏在简单表象下的复杂度 <br /> 1.1.6 令人迷惑的选择--锦上添花还是雪中送炭 <br /> 1.1.7 回到问题上来 <br /> 1.2 JavaScript的应用范围 <br /> 1.2.1 客户端的JavaScript <br /> 1.2.2 服务器端的JavaScript <br /> 1.2.3 其他环境中的JavaScript <br /> 1.3 JavaScript的版本 <br /> 1.3.1 浏览器中的JavaScript版本 <br /> 1.3.2 其他版本 <br /> 1.4 一些值得留意的特性 <br /> 1.4.1 小把戏--神奇的魔法代码 <br /> 1.4.2 为客户端服务--经典Hello World!的另一种JavaScript实现 <br /> 1.4.3 数据交互--JavaScript的一项强大功能 <br /> 1.4.4 JavaScript表面上的禁忌及如何突破这些禁忌 <br /> 1.5 安全性和执行效率 <br /> 1.5.1 数据安全--永远的敏感话题 <br /> 1.5.2 实战!攻击与防范 <br /> 1.5.3 不容马虎--时刻关注性能 <br /> 1.6 一个例子--JavaScript编写的计算器 <br /> 1.6.1 从需求分析开始--什么是计算器? <br /> 1.6.2 系统设计--如何实现计算器? <br /> 1.6.3 系统实现--计算器的最终实现 <br /> 1.6.4 持续改进--迭代的软件开发过程 <br /> 1.7 学习和使用JavaScript的几点建议 <br /> 1.7.1 像程序员一样地思考--程序员的四个境界 <br /> 1.7.2 吝惜你的代码 <br /> 1.7.3 学会在环境中调试 <br /> 1.7.4 警惕那些小缺陷 <br /> 1.7.5 思考先于实践--不要轻易动手写代码 <br /> 1.7.6 时刻回头--圣贤也无法完全预知未来 <br /> 1.8 关于本书的其余部分 <br /> 第2章 浏览器中的JavaScript<br /> 2.1 嵌入网页的可执行内容 <br /> 2.1.1 在什么地方装载JavaScript代码 <br /> 2.1.2 关于代码的Script标签 <br /> 2.1.3 我的代码什么时候被执行--不同执行期的JavaScript代码 <br />2.1.4 拿来主义--引入外部的JavaScript文件 <br /> 2.2 赏心悦目的特效 <br /> 2.2.1 生命在于运动--DHTML的效果 <br /> 2.2.2 换一种风格--CSS的力量 <br /> 2.2.3 用JavaScript操作DOM--一个可拖动窗口的例子 <br /> 2.3 使用JavaScript来与用户交互 <br /> 2.3.1 创建一个弹出式帮助和进度条 <br /> 2.3.2 填错了哦 <br /> 2.4 绕开脚本陷阱 <br /> 2.4.1 现实并不总是完美的 <br /> 2.4.2 不能完全相信你所见到的 <br /> 2.5 总结 <br /> 第3章 开发环境和调试方法<br /> 3.1 我能用什么来编写脚本--适合编写JavaScript的文本编辑器 <br /> 3.2 来自浏览器的支持 <br /> 3.2.1 主流浏览器 <br /> 3.2.2 非主流浏览器 <br /> 3.3 集成开发环境 <br /> 3.3.1 什么是集成开发环境 <br /> 3.3.2 我需要集成开发环境吗 <br /> 3.3.3 适合JavaScript的集成开发环境 <br /> 3.4 调试工具--提升开发效率的利器 <br /> 3.4.1 什么是调试 <br /> 3.4.2 原始的调试方法--利用输出语句、“反射”机制和调试对象来进行调试 <br /> 3.4.3 适合JavaScript的调试工具 <br /> 3.5 定位代码和调用堆栈 <br /> 3.5.1 Step by Step--单步和断点 <br /> 3.5.2 监视内存 <br /> 3.5.3 追踪问题的源头--查看调用堆栈 <br /> 3.5.4 遇到麻烦了--为什么我跟踪不到代码 <br /> 3.6 浏览器捕获异常 <br /> 3.6.1 异常处理机制--一个try/catch/finally模式的例子 <br /> 3.6.2 异常的种类 <br /> 3.6.3 应该在什么时候“吃掉”异常 <br /> 3.7 总结 <br /> 第二部分 JavaScript核心<br /> 第4章 语言结构<br /> 4.1 JavaScript的基本文法 <br /> 4.1.1 字符集 <br /> 4.1.2 大小写敏感 <br /> 4.1.3 分隔符 <br /> 4.1.4 词、句子和段落 <br /> 4.1.5 分号 <br /> 4.1.6 标记 <br /> 4.1.7 注释 <br /> 4.1.8 保留字 <br /> 4.2 常量和变量 <br /> 4.2.1 常量和变量 <br /> 4.2.2 变量的标识符 <br /> 4.2.3 变量的类型 <br /> 4.2.4 变量的声明 <br /> 4.2.5 变量的作用域 <br /> 4.3 表达式和运算符 <br /> 4.3.1 表达式 <br /> 4.3.2 运算符概述 <br /> 4.3.3 算术运算符 <br /> 4.3.4 关系运算符 <br /> 4.3.5 逻辑运算符 <br /> 4.3.6 位运算符 <br /> 4.3.7 赋值运算符 <br /> 4.3.8 其他运算符 <br /> 4.3.8.1 条件运算符 <br /> 4.3.8.2 逗号运算符 <br /> 4.3.8.3 对象运算符 <br /> 4.3.8.4 类型运算符 <br /> 4.3.8.5 void运算符 <br /> 4.3.8.6 函数调用运算符 <br /> 4.4 控制语句 <br /> 4.4.1 表达式语句 <br /> 4.4.2 语句块 <br /> 4.4.3 条件语句 <br /> 4.4.4 循环语句 <br /> 4.4.5 跳转语句 <br /> 4.4.6 异常处理语句 <br /> 4.4.7 其他语句 <br /> 4.4.7.1 var语句 <br /> 4.4.7.2 function语句 <br /> 4.4.7.3 with语句 <br /> 4.4.7.4 空语句 <br /> 4.5 总结 <br /> 第5章 数据类型<br /> 5.1 基本数据类型 <br /> 5.1.1 数值 <br />5.1.2 字符串--一个字符串相关操作的例子 <br /> 5.1.3 布尔型 <br /> 5.2 数组和对象 <br /> 5.2.1 数组 <br /> 5.2.2 对象--一个构造函数的例子 <br /> 5.3 函数类型--一个函数和闭包的例子 <br /> 5.4 神奇的null和undefined <br /> 5.4.1 null <br /> 5.4.2 undefined--独一无二的类型 <br /> 5.5 正则表达式 <br /> 5.5.1 正则表达式常量 <br /> 5.5.2 正则表达式对象 <br /> 5.6 值类型和引用类型 <br /> 5.6.1 什么是值和值的引用 <br /> 5.6.2 使用值和使用引用 <br /> 5.6.3 值与引用的相互转换:装箱和拆箱 <br /> 5.7 类型识别与类型转换 <br /> 5.7.1 运行时类型识别--两个运行的类型识别的例子 <br /> 5.7.2 类型的自动转换及其例子 <br /> 5.7.3 强制类型转换及其例子 <br /> 5.7.4 高级用法--一个自定义类型转换的例子 <br /> 5.8 警惕数值陷阱 <br /> 5.8.1 困惑--浮点数的精度问题 <br /> 5.8.2 误差的修正及其例子 <br /> 5.9 总结 <br /> 第6章 函数<br /> 6.1 函数定义和函数调用 <br /> 6.1.1 函数的定义 <br /> 6.1.1.1 声明式函数定义与函数表达式及其例子 <br /> 6.1.1.2 JavaScript函数的奥妙——魔法代码 <br /> 6.1.2 函数的调用 <br /> 6.2 函数的参数 <br /> 6.2.1 形参与实参 <br /> 6.2.2 Arguments对象 <br /> 6.2.2.1 一个使用Arguments对象检测形参的例子 <br /> 6.2.2.2 一个使用Arguments对象接收任意个数参数的例子 <br /> 6.2.2.3 一个使用Arguments对象模拟函数重载的例子 <br /> 6.2.3 参数类型匹配--一个利用arguments实现函数重载机制的例子 <br /> 6.3 函数的调用者和所有者 <br /> 6.3.1 函数的调用者 <br /> 6.3.2 函数的所有者--一个为函数指定所有者的例子 <br /> 6.3.3 动态调用--外来的所有者 <br /> 6.4 函数常量和闭包 <br /> 6.4.1 匿名的函数 <br /> 6.4.2 函数引用 <br /> 6.4.3 函数参数和函数返回值及其例子 <br /> 6.4.4 高级用法--闭包作为局部域与延迟求值 <br /> 6.5 高级抽象--Function类型和函数模版 <br /> 6.5.1 动态创建函数--一个利用Function实现Lambda算子的例子 <br /> 6.5.2 模式--函数工厂及其实例 <br /> 6.6 总结 <br /> 第7章 对象<br /> 7.1 什么是对象 <br /> 7.2 对象的属性和方法 <br /> 7.2.1 对象的内置属性 <br /> 7.2.2 为对象添加和删除属性 <br /> 7.2.3 反射机制--枚举对象属性 <br /> 7.3 对象的构造 <br /> 7.3.1 构造函数--一个双精度浮点数封装类的例子 <br /> 7.3.2 缺省构造和拷贝构造 <br /> 7.3.3 对象常量 <br /> 7.4 对象的销毁和存储单元的回收 <br /> 7.5 JavaScript的内置对象 <br /> 7.5.1 Math对象 <br /> 7.5.2 Date对象--创建一个简单的日历 <br /> 7.5.3 Error对象 <br /> 7.5.4 其他内置对象 <br /> 7.5.5 特殊的对象--全局对象与调用对象 <br /> 7.6 总结 <br /> 第8章 集合<br />8.1 数组和数组元素 <br /> 8.1.1 数组的构造 <br /> 8.1.2 数组常量 <br /> 8.1.3 数组元素 <br /> 8.2 数组对象和方法 <br /> 8.2.1 查找元素 <br /> 8.2.2 添加和删除元素 <br /> 8.2.3 集合操作及其范例 <br /> 8.2.3.1 join()方法 <br /> 8.2.3.2 reverse()方法 <br /> 8.2.3.3 sort()方法 <br /> 8.2.3.4 concat()方法 <br /> 8.2.3.5 slice()方法 <br /> 8.2.3.6 splice()方法 <br /> 8.2.3.7 toSgring()方法和toLocaleString()方法 <br /> 8.3 哈希表 <br /> 8.3.1 什么是哈希表 <br /> 8.3.2 哈希表的构造 <br /> 8.3.3 实现一个简单的HashTable类型 <br /> 8.4 高级用法--集合操作和闭包 <br /> 8.5 总结 <br /> 第9章 字符串<br /> 9.1 字符串的构造 <br /> 9.1.1 字符串常量 <br /> 9.1.2 转义序列 <br /> 9.1.3 字符串构造函数 <br /> 9.2 字符串的使用 <br /> 9.2.1 比较字符串 <br /> 9.2.2 抽取和检索子串 <br /> 9.2.3 连接拆分字符串 <br /> 9.2.4 字符串的模式匹配--一个字符串格式校验的例子 <br /> 9.2.5 其他方法 <br /> 9.3 字符串与字符数组 <br /> 9.4 字符串与文本处理--JavaScript棋谱阅读器(一) <br /> 9.4.1 需求分析--什么是棋谱和棋谱阅读器 <br /> 9.4.2 系统设计--棋谱和棋盘数据的字符串描述 <br /> 9.4.3 系统实现--解析和处理棋谱 <br /> 9.4.4 完整的棋谱阅读器 <br /> 9.5 总结 <br /> 第10章 正则表达式<br /> 10.1 什么是正则表达式 <br /> 10.1.1 正则表达式的概念 <br /> 10.1.2 JavaScript中的正则表达式 <br /> 10.2 正则表达式的规则 <br /> 10.2.1 直接量字符 <br /> 10.2.2 字符类和布尔操作 <br /> 10.2.3 重复 <br /> 10.2.4 选择、分组和引用 <br /> 10.2.5 指定匹配的位置 <br /> 10.2.6 标志——高级模式匹配的规则 <br /> 10.3 模式匹配 <br /> 10.3.1 用于模式匹配的String方法及其例子 <br /> 10.3.2 用于模式匹配的RegExp方法 <br /> 10.3.2.1 一个使用exec()方法从身份证号码获取生日的例子 <br /> 10.3.2.2 一个使用test()方法遍历字符串的例子 <br /> 10.4 关于正则表达式包装对象 <br /> 10.4.1 RegExp对象——利用正则表达式实现全文检索 <br /> 10.4.2 RegExp的实例属性 <br /> 10.5 强大的正则表达式 <br /> 10.5.1 分析正则表达式的局部 <br /> 10.5.2 一个例子--强大的在线编辑器 <br /> 10.5.3 构造新的文法--一个在JSVM中实现JSVM2解析器的例子 <br /> 10.6 高级用法 <br /> 10.7 用正则表达式处理文本 <br /> 10.7.1 创建一个计价公式编辑器 <br /> 10.7.1.1 需求分析--什么是计价公式编辑器 <br /> 10.7.1.2 系统实现--计价公式编辑器的实现 <br /> 10.7.2 创建一个同步滚动歌词播放器 <br /> 10.7.2.1 需求分析--什么是同步滚动歌词播放器 <br /> 10.7.2.2 系统设计与实现--处理LRC歌词 <br /> 10.8 总结 <br /> 第三部分 浏览器与DOM<br />第11章 浏览器对象<br /> 11.1 Window对象--最基本的浏览器对象 <br /> 11.1.1 Window对象概览 <br /> 11.1.2 Window对象的生命周期 <br /> 11.1.3 Window对象的属性和方法 <br /> 11.1.4 一个多窗口应用的例子 <br /> 11.2 Document对象--浏览器窗口文档内容的代表 <br /> 11.2.1 Document对象概览 <br /> 11.2.2 动态生成的文档 <br /> 11.2.3 Document对象的基本信息 <br /> 11.2.4 Document对象的外观属性 <br /> 11.2.5 Document子对象接口 <br /> 11.2.5.1 一个遍历Anchors对象的例子 <br /> 11.2.5.2 一个颠倒图片的例子 <br /> 11.3 对话框和状态栏 <br /> 11.3.1 创建一个简单对话框 <br /> 11.3.2 其他类型的对话框 <br /> 11.3.2.1 模拟对话框--创建一个窗口对话框及一个对话框阻塞进行的例子 <br /> 11.3.2.2 showModalDialog和showModelessDialog--非W3C或ECMAScrip标准 <br /> 11.3.3 状态栏 <br /> 11.4 框架--上层的Window对象 <br /> 11.4.1 多框架应用 <br /> 11.4.2 框架之间的关系 <br /> 11.4.3 框架的命名 <br /> 11.4.4 子框架中的JavaScript <br /> 11.4.5 框架的应用--多页签显示 <br /> 11.4.5.1 什么是页签 <br /> 11.4.5.2 页签的实现--创建一个包含页签的页面 <br /> 11.5 表单和表单对象 <br /> 11.5.1 Form对象及其范例 <br /> 11.5.2 定义表单元素 <br /> 11.5.3 客户端表单校验及其例子 <br /> 11.5.4 创建一款通用的客户端表单校验组件 <br /> 11.6 其他内置对象 <br /> 11.6.1 Navigator对象--浏览器总体信息的代表 <br /> 11.6.2 Screen对象--提供显示器分辨率和可用颜色数量信息 <br /> 11.6.3 Location对象--当前窗口中显示文档的URL的代表 <br /> 11.6.4 History对象--一个有趣的对象 <br /> 11.7 总结 <br /> 第12章 文档对象模型<br /> 12.1 什么是DOM <br /> 12.1.1 把文档表示为树 <br /> 12.1.2 树的节点 <br /> 12.1.3 DOM对象的通用属性和方法 <br /> 12.1.4 HTML结构和DOM对象的关系--用JavaScript通过DOM来操作HTML文档 <br /> 12.2 DOM与浏览器实现 <br /> 12.2.1 关于DOM HTML API <br /> 12.2.2 DOM的级别和特性 <br /> 12.2.3 DOM的一致性 <br /> 12.2.4 差异性--浏览器的DOM方言 <br /> 12.3 一组“盒子”--DOM元素 <br /> 12.3.1 嵌套的“盒子” <br /> 12.3.2 “盒子”和“盒子”内容的分类 <br /> 12.4 创建和删除节点 <br /> 12.4.1 构造全新的节点 <br /> 12.4.2 平面展开--通过文档元素直接创建 <br /> 12.4.3 回收空间--删除不用的节点 <br /> 12.5 访问和操纵DOM节点 <br /> 12.5.1 打开每一个盒子--遍历节点 <br /> 12.5.2 弄清层级关系--父子与兄弟 <br /> 12.5.3 如何搜索特定节点 <br /> 12.5.4 克隆节点--一个使用cloneNode()复制表格的例子 <br /> 12.5.5 移动节点及其范例 <br /> 12.5.6 关于添加新行和排序的小技巧 <br /> 12.6 读写数据--添加、修改和删除属性 <br />12.7 外观与行为 <br /> 12.7.1 DOM样式属性 <br /> 12.7.2 控制DOM元素的显示与隐藏 <br /> 12.7.3 改变颜色和大小--一个简单有趣的例子 <br /> 12.7.4 改变位置--创建一个绕圆圈旋转的文字 <br /> 12.7.5 编辑控制及其范例 <br /> 12.7.6 改变样式及其范例 <br /> 12.7.7 改变行为 <br /> 12.8 XML DOM <br /> 12.8.1 什么是XML DOM <br /> 12.8.2 如何使用XML DOM--一个利用XML实现多级关联下拉选择框的例子 <br /> 12.9 总结 <br /> 第13章 事件处理<br /> 13.1 什么是事件 <br /> 13.1.1 消息与事件响应 <br /> 13.1.2 浏览器的事件驱动机制 <br /> 13.2 基本事件处理 <br /> 13.2.1 事件和事件类型 <br /> 13.2.2 事件的绑定 <br /> 13.2.3 直接调用事件处理函数 <br /> 13.2.4 事件处理函数的返回值 <br /> 13.2.5 带参数的事件响应及其例子 <br /> 13.2.6 “this”关键字 <br /> 13.3 标准事件模型 <br /> 13.3.1 起泡和捕捉--浏览器的事件传播 <br /> 13.3.2 事件处理函数的注册 <br /> 13.3.3 把对象注册为事件处理程序 <br /> 13.3.4 事件模块和事件类型 <br /> 13.3.5 关于Event接口 <br /> 13.3.5.1 Event接口的属性和方法 <br /> 13.3.5.2 UIEvent接口的属性 <br /> 13.3.5.3 MouseEvent接口的属性 <br /> 13.3.5.4 MutationEvent接口 <br /> 13.3.6 混合事件模型 <br /> 13.3.7 合成事件 <br /> 13.4 浏览器的事件处理模型实现 <br /> 13.4.1 Internet Explorer事件模型 <br /> 13.4.1.1 关于IE事件注册 <br /> 13.4.1.2 IE Event对象的属性 <br /> 13.4.1.3 IE中的事件起泡 <br /> 13.4.2 Netscape 4事件模型 <br /> 13.4.2.1 Netscape 4中的事件捕捉及其范例 <br /> 13.4.2.2 Netscape 4 Event对象的属性 <br /> 13.5 回调与用户自定义事件 <br /> 13.5.1 事件处理模式--一个实现简单事件处理模式的例子 <br /> 13.5.2 用户事件接口的定义 <br /> 13.5.3 事件代理和事件注册--一个实现标准事件接口的例子 <br /> 13.5.4 标准模式--事件分派和接收 <br /> 13.6 一个例子--增强数据表格 <br /> 13.6.1 什么是增强数据表格 <br /> 13.6.2 一个采用两重table嵌套方式固定表头的例子 <br /> 13.6.3 可变列宽的实现 <br /> 13.6.4 标记行--呈现有别于其他行的背景色 <br /> 13.6.5 小技巧--将代码添加到样式表 <br /> 13.7 总结 <br /> 第14章 级联样式表<br /> 14.1 什么是级联样式表 <br /> 14.1.1 CSS样式和样式表 <br /> 14.1.2 CSS的标准化 <br /> 14.1.3 浏览器支持的CSS <br /> 14.2 JavaScript与CSS <br /> 14.2.1 CSS和DOM的关系 <br /> 14.2.2 CSS和IE的关系 <br /> 14.2.3 浏览器的CSS兼容性 <br /> 14.3 控制CSS改变页面风格 <br /> 14.3.1 实现结构与表现的分离及其范例 <br /> 14.3.2 使用JwaScript和CSS实现页面多种风格的实时替换 <br /> 14.4 总结 <br /> 第15章 数据存储的脚本化<br /> 15.1 什么是cookie <br />15.1.1 浏览器和客户端cookie <br /> 15.1.2 cookie的属性 <br /> 15.2 cookie的客户端存取 <br /> 15.2.1 cookie的存储 <br /> 15.2.2 cookie的读取 <br /> 15.3 cookie的限制 <br /> 15.4 cookie示例--让问候更加温暖 <br /> 15.5 cookie对象的封装 <br /> 15.6 什么是userData <br /> 15.6.1 浏览器和客户端userData <br /> 15.6.2 userData的声明 <br /> 15.6.3 userData的属性和方法 <br /> 15.7 userData的客户端存取 <br /> 15.7.1 userData的存储和读取 <br /> 15.7.2 userData的安全性 <br /> 15.8 userData的限制 <br /> 15.9 userData与cookie的对比 <br /> 15.10 userData示例--一个利用userData实现客户端保存表单数据的例子 <br /> 15.11 总结 <br /> 第四部分 数据交互<br /> 第16章 同步和异步<br /> 16.1 什么是同步和异步 <br /> 16.2 超时设定和时间间隔 <br /> 16.3 定时器使用--侦听与拦截 <br /> 16.3.1 标准模式--监视器及其范例 <br /> 16.3.2 使用定时器时应当注意的问题 <br /> 16.4 一个例子--漂亮的Web时钟 <br /> 16.4.1 什么是Web时钟? <br /> 16.4.2 最简单的Web时钟 <br /> 16.4.3 Web时钟的设计 <br /> 16.4.4 完整的Web时钟源代码 <br /> 16.5 总结 <br /> 第17章 XML DOM和XML HTTP<br /> 17.1 什么是XML DOM对象 <br /> 17.1.1 XML DOM简介 <br /> 17.1.2 浏览器支持的XML DOM接口 <br /> 17.1.2.1 XML DOM标准接口 <br /> 17.1.2.2 IE的XML DOM组件 <br /> 17.1.2.3 操作XML文档--一个使用MSXML操作XML文档的例子 <br /> 17.2 XML DOM的版本兼容性--XML DOM的跨浏览器应用 <br /> 17.3 XML DOM的错误处理 <br /> 17.3.1 处理错误信息的ParseError对象 <br /> 17.3.2 包含错误信息的文档 <br /> 17.4 XML DOM操作XML文档 <br /> 17.4.1 访问节点 <br /> 17.4.2 创建新节点 <br /> 17.4.3 移动和修改节点及其范例 <br /> 17.4.4 读写节点属性和读写数据 <br /> 17.4.5 保存文档 <br /> 17.5 一个例子--JavaScript棋谱阅读器(二) <br /> 17.5.1 用XML描述棋谱 <br /> 17.5.2 将XML棋谱转换为SGF棋谱 <br /> 17.6 什么是XML HTTP对象 <br /> 17.6.1 XML HTTP对象简介 <br /> 17.6.2 浏览器支持的XML HTTP对象 <br /> 17.7 通过XML HTTP发送请求 <br /> 17.7.1 建立连接 <br /> 17.7.2 发送请求 <br /> 17.8 读取和设定HTTP头 <br /> 17.8.1 什么是HTTP头 <br /> 17.8.2 读取和设定HTTP头 <br /> 17.9 服务器应答 <br /> 17.9.1 同步和异步应答及其例子 <br /> 17.9.2 包含应答文本内容的ResponseText 和ResponseXML <br /> 17.10 总结 <br /> 第18章 Ajax简介<br /> 18.1 什么是Ajax <br /> 18.1.1 Ajax并不神秘 <br /> 18.1.2 Ajax的应用场景 <br /> 18.1.3 Ajax的竞争对手--其他替代技术 <br /> 18.2 Ajax初探--我的第一个Ajax程序 <br /> 18.2.1 从常规应用开始--一个简单的实时聊天室 <br /> 18.2.2 讨厌的页面刷新 <br /> 18.2.3 无刷新解决方案--改进的聊天室 <br />18.2.4 异步工作--迟滞感的解决方案 <br /> 18.3 Ajax原理剖析 <br /> 18.3.1 XML HTTP实时通信及一个简单封装了AjaxProxy对象的例子 <br /> 18.3.2 数据动态显示--Ajax改善交互体验的重要特点 <br /> 18.3.3 发挥XML的能力 <br /> 18.3.4 用JavaScript绑定一切 <br /> 18.3.5 应用背后的标准 <br /> 18.4 Ajax范例--实时聊天工具 <br /> 18.4.1 什么是实时聊天工具 <br /> 18.4.2 需求分析--实时聊天功能的实现要点 <br /> 18.4.3 系统实现--实时聊天功能的实现 <br /> 18.4.4 小结 <br /> 18.5 总结 <br /> 第19章 标准和兼容性<br /> 19.1 标准化组织 <br /> 19.1.1 W3C和DOM标准 <br /> 19.1.2 ECMA和JavaScript标准 <br /> 19.1.3 互联网标准 <br /> 19.2 平台和浏览器的兼容性 <br /> 19.2.1 最小公分母法 <br /> 19.2.2 防御性编码 <br /> 19.2.3 客户端探测器 <br /> 19.2.4 特性检测 <br /> 19.2.5 实现标准 <br /> 19.2.6 适度停止运行 <br /> 19.3 语言版本的兼容性 <br /> 19.3.1 language属性 <br /> 19.3.2 版本测试 <br /> 19.4 如何实现跨浏览器应用 <br /> 19.4.1 取舍--划定支持范围 <br /> 19.4.2 基础模块设计--独立兼容性检测 <br /> 19.4.3 划分运行级别 <br /> 19.4.4 给出正确的信息--不要让你的代码保持沉默 <br /> 19.4.5 充分的应用测试--“兼容性魔鬼”总会趁你不注意时“踢你的狗” <br /> 19.4.6 靠近标准和就近原则 <br /> 19.5 展望未来 <br /> 19.6 总结 <br /> 第20章 信息安全<br /> 20.1 用户的隐私信息 <br /> 20.2 禁止和受限制的操作 <br /> 20.2.1 受限制的属性 <br /> 20.2.2 受限制的操作 <br /> 20.2.3 脚本安全级别 <br /> 20.2.4 脚本调试 <br /> 20.3 警惕幕后的攻击者 <br /> 20.3.1 攻击的手段 <br /> 20.3.2 隐匿的数据流 <br /> 20.3.3 页面伪装 <br /> 20.3.4 发现蛛丝马迹 <br /> 20.3.5 防范的手段 <br /> 20.3.5.1 传输数据的加密 <br /> 20.3.5.2 对用户隐藏源代码 <br /> 20.4 同源策略 <br /> 20.4.1 什么是同源策略 <br /> 20.4.2 同源策略的利弊 <br /> 20.4.3 突破同源策略 <br /> 20.5 安全区和签名脚本 <br /> 20.5.1 可配置的安全策略方案 <br /> 20.5.2 Internet Explorer的安全区 <br /> 20.5.3 Netscape的签名脚本 <br /> 20.6 代码本身的安全--加密和混淆 <br /> 20.6.1 为什么要加密和混淆 <br /> 20.6.2 客户端的加密技术及其例子 <br /> 20.6.3 代码混淆原理 <br /> 20.6.4 JavaScript代码混淆工具--一个代码混淆算法的例子 <br /> 20.6.5 加密和混淆的结合使用 <br /> 20.7 总结 <br /> 第五部分 超越JavaScript<br /> 第21章 面向对象<br /> 21.1 什么面向对象 <br /> 21.1.1 类和对象 <br /> 21.1.2 公有和私有--属性的封装 <br /> 21.1.3 属性和方法的类型 <br /> 21.2 神奇的prototype <br /> 21.2.1 什么是prototype <br /> 21.2.2 prototype的使用技巧 <br />21.2.2.1 给原型对象添加属性 <br /> 21.2.2.2 带默认值的Point对象 <br /> 21.2.2.3 delete操作将对象属性恢复为默认值 <br /> 21.2.2.4 使用prototype巧设getter <br /> 21.2.2.5 delete操作恢复原型属性的可见性 <br /> 21.2.2.6 使用prototype创建大量副本 <br /> 21.2.2.7 使用prototype定义静态方法 <br /> 21.2.3 prototype的实质及其范例 <br /> 21.2.4 prototype的价值与局限性 <br /> 21.3 继承与多态 <br /> 21.3.1 什么是继承 <br /> 21.3.2 实现继承的方法 <br /> 21.3.2.1 构造继承法及其例子 <br /> 21.3.2.2 原型继承法及其例子 <br /> 21.3.2.3 实例继承法及其例子 <br /> 21.3.2.4 拷贝继承法及其例子 <br /> 21.3.2.5 几种继承法的比较 <br /> 21.3.2.6 混合继承法及其例子 <br /> 21.3.3 单继承与多重继承 <br /> 21.3.4 接口及其实现 <br /> 21.3.5 多态及其实现 <br /> 21.4 构造与析构 <br /> 21.4.1 构造函数 <br /> 21.4.2 多重构造 <br /> 21.4.3 析构 <br /> 21.5 疑团!“this”迷宫 <br /> 21.5.1 无数个陷阱--令人困扰的“this”谜团 <br /> 21.5.1.1 this代词的运用 <br /> 21.5.1.2 this“陷阱” <br /> 21.5.1.3 this代词的异步问题 <br /> 21.5.2 偷梁换柱--不好的使用习惯 <br /> 21.5.3 异步调用--谁动了我的“this” <br /> 21.5.4 揭开真相--JavaScript的“this”本质 <br /> 21.5.5 困难不再--利用闭包修正“this”引用 <br /> 21.6 包装对象 <br /> 21.6.1 区分值和引用 <br /> 21.6.2 装箱与拆箱 <br /> 21.7 元类,类的模板 <br /> 21.7.1 什么是元类 <br /> 21.7.2 元类--构造类的类 <br /> 21.7.3 为什么要用元类 <br /> 21.7.4 类工厂 <br /> 21.7.4.1 什么是类工厂 <br /> 21.7.4.2 为什么要建立类工厂 <br /> 21.8 谁才是造物主 <br /> 21.8.1 万物适用的准则 <br /> 21.8.2 抽象的极致--一个抽象模式的例子 <br /> 21.8.3 返璞归真,同源架构 <br /> 21.9 总结 <br /> 第22章 闭包与函数式编程<br /> 22.1 动态语言与闭包 <br /> 22.1.1 动态语言 <br /> 22.1.2 语法域和执行域 <br /> 22.1.3 JavaScript的闭包--一个体现闭包本质的例子 <br /> 22.2 闭包的特点与形式 <br /> 22.2.1 闭包的内在--自治的领域 <br /> 22.2.2 访问外部环境--一个用闭包改变外部环境的例子 <br /> 22.2.3 闭包和面向对象 <br /> 22.2.4 其他形式的闭包 <br /> 22.3 不适合使用闭包的场合 <br /> 22.4 函数式编程 <br /> 22.4.1 什么是函数式编程 <br /> 22.4.1.1 函数是第一型 <br /> 22.4.1.2 闭包与函数式编程 <br /> 22.4.1.3 科里化(Currying)--一个有趣的概念 <br /> 22.4.1.4 延迟求值和延续--一个Fibonacci无穷数列的例子 <br /> 22.4.2 函数式编程、公式化与数学模型--一个抛物线方程的例子 <br /> 22.4.3 函数式编程的优点 <br /> 22.4.3.1 单元测试方面的优点 <br />22.4.3.2 调试方面的优点 <br /> 22.4.3.3 并行方面的优点 <br /> 22.4.3.4 代码热部署方面的优点 <br /> 22.4.3.5 机器辅助的推理和优化 <br /> 22.4.4 函数式编程的缺点 <br /> 22.4.4.1 闭包的副作用 <br /> 22.4.4.2 递归的形式 <br /> 22.4.4.3 延迟求值的副作用 <br /> 22.5 闭包与面向对象 <br /> 22.5.1 私有域 <br /> 22.5.2 名字空间管理 <br /> 22.5.3 友元--一个非常有趣的概念 <br /> 22.6 Python风格的JavaScript代码 <br /> 22.6.1 最简约代码 <br /> 22.6.2 轻量级重用 <br /> 22.6.2.1 JSON <br /> 22.6.2.2 Functional <br /> 22.6.2.3 迭代函数--一个Array迭代函数的例子 <br /> 22.6.3 模块管理及其范例 <br /> 22.7 总结 <br /> 第23章 模块级管理<br /> 23.1 模块化管理 <br /> 23.1.1 模块化--代码的重用 <br /> 23.1.2 JavaScript的模块管理 <br /> 23.2 开放封闭原则和面向接口 <br /> 23.2.1 开放封闭原则 <br /> 23.2.2 面向接口 <br /> 23.3 名字空间管理 <br /> 23.3.1 什么是名字空间 <br /> 23.3.2 为什么要用名字空间 <br /> 23.3.3 JavaScript的名字空间管理 <br /> 23.4 调用依赖 <br /> 23.4.1 模块的依赖性 <br /> 23.4.2 模块依赖的管理 <br /> 23.5 用代码管理代码 <br /> 23.5.1 运行时环境的管理 <br /> 23.5.2 托管代码--一个简单的托管代码“容器” <br /> 23.5.3 一个完整的代码管理容器 <br /> 23.6 总结 <br /> 第24章 动态构建<br /> 24.1 让代码去写代码 <br /> 24.1.1 脚本的动态解析 <br /> 24.1.2 语法扩展--创造属于自己的语言 <br /> 24.2 “发明”语法 <br /> 24.2.1 正则表达式和语法解析及例子 <br /> 24.2.2 一个简单的语法解析器实现 <br /> 24.2.2.1 什么是JavaScript 2.0语法 <br /> 24.2.2.2 JavaScript 2.0语法的部分关键特性实现 <br /> 24.3 实现自己的方言--LispScript <br /> 24.3.1 从JavaScript到Lisp <br /> 24.3.2 最初的工作--一般JavaScript代码 <br /> 24.3.3 公理,表达式 <br /> 24.3.4 函数式编程的七条基本公设 <br /> 24.3.4.1 “引用”公设 <br /> 24.3.4.2 “原子”公设 <br /> 24.3.4.3 “等值”公设 <br /> 24.3.4.4 “表头”公设 <br /> 24.3.4.5 “余表”公设 <br /> 24.3.4.6 “和表”公设 <br /> 24.3.4.7 “条件”公设 <br /> 24.3.5 函数文法 <br /> 24.3.6 使用LispScript定义新函数 <br /> 24.3.7 一个惊喜--_eval <br /> 24.3.8 其他的扩展 <br /> 24.3.9 小结 <br /> 24.3.10 运行环境和代码容器——看看“新发明”的LispScript的实际表现 <br /> 24.4 总结 <br /> 第25章 执行效率<br /> 25.1 为什么要讨论执行效率 <br /> 25.1.1 来自客户的抱怨--JavaScript能有多慢 <br /> 25.1.2 代码慢下来是谁的错 <br /> 25.2 封闭的代价 <br /> 25.2.1 过度封装的性能问题 <br /> 25.2.2 信息隐藏的利弊 <br /> 25.2.3 构造对象的开销 <br /> 25.3 盒子里的流火 <br />25.3.1 DOM的内存开销 <br /> 25.3.2 浏览器的内存管理 <br /> 25.3.3 看清一个事实--内存泄漏的存在 <br /> 25.3.4 注意--及时关闭你的“盒子” <br /> 25.3.5 一些误会的澄清 <br /> 25.3.5.1 脚本动态创建DOM导致内存泄漏 <br /> 25.3.5.2 闭包导致内存泄漏 <br /> 25.4 动态--魔鬼与天使 <br /> 25.4.1 动态解析的性能分析--一个动态特性的效率测试 <br /> 25.4.2 开发效率与执行效率--永远的困难选择 <br /> 25.4.3 优美与适用--学会经受魔鬼的诱惑 <br /> 25.4.4 扮演客户眼中的天使 <br /> 25.5 让代码轻舞飞扬 <br /> 25.5.1 简单就是美--为代码瘦身 <br /> 25.5.2 最完美的运用是不用 <br /> 25.5.3 高度抽象是为了简化问题 <br /> 25.5.4 逻辑和表达同样重要 <br /> 25.5.5 保持代码的严谨 <br /> 25.5.6 漂亮的书写风格--让阅读者心情愉快 <br /> 25.6 总结 <br /> 第26章 应用框架<br /> 26.1 应用框架概览 <br /> 26.1.1 什么是应用框架 <br /> 26.1.2 应用框架的组成部分 <br /> 26.1.2.1 类库 <br /> 26.1.2.2 核心模块 <br /> 26.1.2.3 环境配置 <br /> 26.1.2.4 使用手册 <br /> 26.2 为什么要设计应用框架 <br /> 26.2.1 应用框架的适用范围 <br /> 26.2.2 应用框架的利弊 <br /> 26.3 如何设计应用框架 <br /> 26.3.1 把握设计的目标 <br /> 26.3.2 应用框架的设计准则 <br /> 26.3.3 什么样的应用框架才是成熟的应用框架 <br /> 26.3.4 应用框架的设计方法 <br /> 26.3.5 实战!设计一个简单的应用框架 <br /> 26.3.5.1 自描述 <br /> 26.3.5.2 基础接口和语义型代码 <br /> 26.3.5.3 核心对象的原型扩展 <br /> 26.3.5.4 简单方法 <br /> 26.3.5.5 名字空间 <br /> 26.3.5.6 支持标准和跨浏览器 <br /> 26.3.5.7 事件模型--Silverna的事件模型 <br /> 26.3.5.8 应用模式 <br /> 26.3.5.9 提供Ajax组件 <br /> 26.3.5.10 内存管理和其他 <br /> 26.4 框架的实际应用--在Silverna 2.0框架上开发的Widgets <br /> 26.5 已存在的应用框架 <br /> 26.5.1 Prototype <br /> 26.5.2 JQuery <br /> 26.5.3 Dojo <br /> 26.5.4 JSVM <br /> 26.5.5 其他框架 <br /> 26.5.5.1 Bindows(成立于2003年) <br /> 26.5.5.2 BackBase (成立于2003年) <br /> 26.5.5.3 DOJO (开发中,成立于2004年9月) <br /> 26.5.5.4 Open Rico(开发中,成立于2005年5月,基于早期的一个proprietary框架) <br /> 26.5.5.5 qooxdoo (开发中,成立于2005年5月) <br /> 26.5.5.6 Tibet (开发中,创建于2005年6月) <br /> 26.5.5.7 AJFORM (创建于2005年6月) <br /> 26.6 总结 </p>
比较新的一个AJAX入门级教程——ExtJS2.0,EXTJS是一个与后台技术无关的前端AJAX框架,用它可以开发出界面华丽,用户体验很好的WEB应用,同时,AJAX技术也是时下非常流行的一款WEB技术,因些,本入门级教程可让你先了解一些AJAX的基本知识等。