《疯狂Ajax讲义(第3版)》
基本信息
作者: 李刚
出版社:清华大学出版社
ISBN:9787121193941
上架时间:2013-2-4
出版日期:2013 年2月
开本:16开
页码:636
版次:1-1
所属分类:计算机 > 软件与程序设计 > 网络编程 > javascript
更多关于 》》》《疯狂Ajax讲义(第3版)》
内容简介
计算机书籍
《疯狂ajax讲义(第3版)——jquery/ext js/prototype/dwr企业应用前端开发实战》为《疯狂ajax讲义》的第3版,其中jquery升级到1.8版本;prototype升级到1.7.1版本;dwr升级到3.0版本。第3版最大更新是详细、全面地介绍了ext js 4.1的知识。由于ext js 4.1本身内容比较多,因此本书花了几百页来介绍ext js的功能和用法,这部分内容独立出来即可作为ext js 4.1的学习手册。
《疯狂ajax讲义(第3版)——jquery/ext js/prototype/dwr企业应用前端开发实战》详细介绍了jquery 1.8、ext js 4.1、prototype 1.7.1、dwr这4个最常用的ajax框架的用法,并针对每个框架提供了一个实用案例,让读者理论联系实际。这部分内容是“疯狂软件教育中心”的标准讲义,它既包含了实际ajax开发的重点和难点,也融入了大量学习者的学习经验和感悟。再由笔者以丰富的授课经验为基础,深入浅出地介绍它们,希望读者真正掌握ajax开发的精髓。本书最后提供了2个综合性案例:blog系统和电子拍卖系统,让读者将前面所学真正应用到实际项目中。电子拍卖系统是一个包含5个表、表之间具有复杂关联映射的系统,该案例采用目前最流行、最规范的轻量级java ee架构,将整个应用分为领域对象层、dao层、业务逻辑层,然后用dwr作为ajax引擎调用业务逻辑方法响应异步请求,系统权限检查推迟到业务逻辑层完成,并使用http session跟踪用户操作状态,从而避免用户刷新浏览器导致的浏览状态丢失。该案例对实际项目具有极好的指导价值和借鉴意义。该案例既提供了ide无关的、基于ant管理的项目源码,也提供了基于eclipse ide的项目源码,最大限度地满足读者的需求。如果在阅读本书时遇到任何技术问题,都可登录http://www.crazyit.org与本书庞大的读者群交流。
《疯狂ajax讲义(第3版)——jquery/ext js/prototype/dwr企业应用前端开发实战》并非针对零基础的读者,书中不再包含html、css、javascript相关知识,这些知识是阅读本书的基础。本书适合有初步html、css、javascript基础的读者,或对企业应用前端开发不太熟悉的开发人员。如果你已经掌握本书上篇:《疯狂html 5/css 3/javascript讲义》内容,将非常适合阅读此书。
目录
《疯狂ajax讲义(第3版)——jquery/ext js/prototype/dwr企业应用前端开发实战》
第1章 ajax概述与ajax初体验
1.1 重新思考web应用
1.1.1 应用系统的发展史
1.1.2 传统web应用的优势和缺点
1.2 重新设计web应用
1.2.1 富internet应用
1.2.2 使用ajax
1.3 ajax技术介绍
1.3.1 ajax的工作方式
1.3.2 ajax技术核心:xmlhttprequest
1.3.3 ajax的编程脚本:javascript语言
1.3.4 html页面的dom模型
1.3.5 动态加载和显示数据
1.3.6 ajax的特征
1.3.7 ajax带来的典型优势
1.4 开发传统的b/s聊天室
1.4.1 实现业务逻辑组件
1.4.2 实现控制器
1.4.3 实现视图
.1.4.4 传统b/s聊天室的问题
1.5 ajax聊天室
1.5.1 异步发送请求
1.5.2 解决多余刷新的问题
1.5.3 解析服务器响应
1.5.4 何时发送请求
1.5.5 ajax聊天室的特点
1.6 ajax编程的技术难点
1.7 传统web应用与ajax应用的对比
1.8 本章小结
第2章 xmlhttprequest对象详解
2.1 xmlhttprequest对象概述
2.2 xmlhttprequest的方法和属性
2.2.1 xmlhttprequest的方法
2.2.2 xmlhttprequest的属性
2.3 发送请求
2.3.1 发送简单请求
2.3.2 发送get请求
2.3.3 发送post请求
2.3.4 发送请求时的编码问题
2.3.5 发送xml请求
2.4 处理服务器响应
2.4.1 处理的时机
2.4.2 使用文本响应
2.4.3 使用json响应
2.5 xmlhttprequest对象的运行周期
2.6 ajax必须解决的问题
2.6.1 跨浏览器问题
2.6.2 安全性问题
2.6.3 性能问题
2.7 本章小结
第3章 jquery库详解
3.1 jquery入门
3.1.1 理解jquery的设计
3.1.2 下载和安装jquery
3.1.3 让jquery与其他javascript库共存
3.2 获取jquery对象
3.2.1 jquery核心函数
3.2.2 jquery与jquery.holdready
3.2.3 以css选择器访问dom元素
3.2.4 选择器的附加限定词
3.2.5 表单相关的选择器
3.3 jquery操作类数组的工具方法
3.3.1 过滤相关方法
3.3.2 仿dom导航查找的相关方法
3.3.3 链接方法
3.4 jquery支持的方法
3.4.1 jquery命名空间的方法
3.4.2 数据存储的相关方法
3.4.3 操作属性的相关方法
3.4.4 操作css属性的相关方法
3.4.5 操作元素内容的相关方法
3.4.6 操作dom节点的相关方法
3.5 jquery事件相关方法
3.5.1 绑定事件处理函数
3.5.2 特定事件相关的方法
3.5.3 事件对象
3.6 动画效果相关的方法
3.6.1 简单动画和复杂动画
3.6.2 操作动画队列
3.7 jquery的回调支持
3.7.1 回调支持的基本用法
3.7.2 创建callbacks支持的选项
3.8 ajax相关方法
3.8.1 三个工具方法
3.8.2 使用load方法
3.8.3 jquery.ajax(options)与jquery.ajaxsetup(options)
3.8.4 使用get/post方法
3.9 jquery的deferred对象
3.9.1 jquery的异步调用
3.9.2 为多个耗时操作指定回调函数
3.9.3 为普通对象增加defered接口
3.9.4 jquery对象的promise方法
3.10 扩展jquery和jquery插件
3.11 本章小结
第4章 基于jquery的应用:电子相册系统
4.1 实现持久层
4.1.1 实现持久化类
4.1.2 配置sessionfactory
4.2 实现dao组件
4.2.1 开发通用dao组件
4.2.2 dao接口定义
4.2.3 完成dao组件的实现类
4.3 实现业务逻辑层
4.3.1 实现业务逻辑组件
4.3.2 配置业务逻辑组件
4.4 实现客户端调用
4.4.1 访问业务逻辑组件
4.4.2 处理用户登录
4.4.3 获得用户相片列表
4.4.4 处理翻页
4.4.5 通过隐藏iframe实现文件上传
4.4.6 页面加载时的处理
4.5 本章小结
第5章 ext js核心技术详解
5.1 ext js入门
5.1.1 下载和安装ext js
5.1.2 ext 入门示例
5.1.3 使用ext js文档
5.2 核心工具方法
5.2.1 ext的属性和获取浏览器特性
5.2.2 onready方法
5.2.3 ext.defer方法
5.2.4 ext.apply和ext.applyif方法
5.2.5 ext.define、ext.create和ext.extend方法
5.2.6 ext.isxxx方法
5.2.7 ext.each和ext.iterate方法
5.2.8 ext.namespace方法
5.3 ext js扩展的工具方法
5.3.1 为array扩展的工具方法
5.3.2 为date扩展的工具方法
5.3.3 为function扩展的工具方法
5.3.4 为number扩展的工具方法
5.3.5 为object扩展的工具方法
5.3.6 为string扩展的工具方法
5.3.7 json支持
5.4 简化的dom操作
5.4.1 ext.get、ext.getxxx和ext.fly方法
5.4.2 ext.query、ext.select方法与ext.dom.query工具类
5.4.3 dom元素的常用操作
5.4.4 使用ext.domhelper、ext.template动态生成html
5.5 动画处理
5.5.1 使用ext.fx.anim实现简单动画
5.5.2 使用ext.fx.animator实现多关键帧动画
5.5.3 为元素增加动画
5.6 ext js的事件处理
5.6.1 使用ext.eventmanager管理事件处理函数与ext.eventobject事件对象
5.6.2 事件处理函数的执行范围和附加选项
5.6.3 使用ext.util.observable实现内部事件
5.7 实用工具集
5.7.1 ext.util.hashmap与ext.util.mixedcollection
5.7.2 使用ext.util.cookies操作cookie
5.7.3 使用ext.util.delayedtask 处理延时任务
5.7.4 包装单击事件:ext.util.clickrepeater
5.7.5 使用ext.util.taskrunner与ext.taskmanager
5.7.6 使用ext.util.keymap与ext.util.keynav为元素处理按键事件
5.8 拖放
5.8.1 使用ext.dd.dd和ext.dd.ddproxy创建可拖放元素
5.8.2 用ext.dd.dragsource创建拖动源与用ext.dd.droptarget创建放目标
5.8.3 用ext.dd.dragzone创建拖动源与用ext.dd.dropzone创建放目标
5.9 ajax支持
5.10 本章小结
第6章 ext js界面组件详解
6.1 容器、面板和窗口
6.1.1 使用ext.component
6.1.2 使用ext.container.container创建容器
6.1.3 使用ext.panel.panel创建面板
6.1.4 使用ext.toolbar.toolbar添加工具条
6.1.5 使用ext.tab.panel创建tab面板
6.1.6 使用ext.container.viewport整体布局
6.1.7 使用ext.window.window创建窗口
6.1.8 使用ext.window.messageBox创建对话框
6.2 布局
6.2.1 容器与布局的关系
6.2.2 垂直布局与水平布局
6.2.3 使用ext.resizer.resizer为组件增加大小调整功能
6.2.4 使用ext.resizer.splitter为盒布局增加大小调整的功能
6.2.5 使用ext.layout.container.accordion实现折叠布局
6.2.6 使用ext.layout.container.border实现边框布局
6.2.7 使用ext.layout.container.table实现表格布局
6.2.8 使用ext.layout.container.column实现列布局
6.2.9 使用ext.layout.container.auto实现自动布局
6.2.10 使用ext.layout.container.fit实现自适应布局
6.2.11 使用ext.layout.container.card实现卡片布局
6.2.12 使用ext.layout.container.anchor实现锚布局
6.2.13 使用ext.layout.container.absolute实现绝对布局
6.3 菜单及菜单项
6.3.1 使用菜单
6.3.2 使用ext.menu.checkitem实现可勾选菜单项
6.3.3 使用ext.menu.colorpicker创建颜色选择器菜单
6.3.4 使用ext.menu.datepicker创建日期选择菜单
6.4 按钮
6.4.1 使用按钮
6.4.2 带菜单的按钮
6.4.3 带分割线的按钮:ext.button.split
6.4.4 多状态按钮:ext.button.cycle
6.4.5 使用ext.container.buttongroup创建按钮组
6.4.6 使用ext.action
6.5 其他组件及实用功能
6.5.1 使用ext. progressbar创建进度条
6.5.2 使用ext.slider.single创建滑动条
6.5.3 使用ext.slider.multi创建多滑块滑动条
6.5.4 使用ext.img创建图片
6.5.5 使用ext.editor创建编辑器
6.5.6 使用ext.tip.tooltip创建提示
6.5.7 使用ext.tip.quicktipmanager和ext.tip.quicktip创建提示
6.5.8 使用ext.ux.gmappanel实现google地图
6.6 表单
6.6.1 使用ext.form.panel与ext.form.basic创建表单
6.6.2 配置输入校验选项
6.6.3 使用vtype选项配置输入校验
6.6.4 使用ext.form.action.submit提交表单
6.6.5 使用ext.form.action.load为表单装载数据
6.6.6 使用ext.form.action.standardsubmit提交表单
6.6.7 单行文本框、密码框
6.6.8 使用ext.form.field.number 创建数值框
6.6.9 使用ext.form.field.date创建日期选择框
6.6.10 使用ext.form.field.spinner创建微调选择框
6.6.11 使用ext.form.field.textarea创建文本域
6.6.12 使用ext.form.field.htmleditor创建富文本编辑器
6.6.13 使用ext.form.field.file上传文件
6.6.14 使用ext.form.field.checkBox创建复选框
6.6.15 使用ext.form.field.radio创建单选按钮
6.6.16 使用ext.form.field.comboBox创建复合框
6.6.17 使用远程数据、querymode为local的复合框
6.6.18 querymode为remote的复合框
6.6.19 为ext.form.field.comboBox增加分页功能
6.6.20 实现ext.form.field.comboBox二级联动
6.6.21 使用ext.form.fieldset组合表单控件
6.7 ext js的数据中心
6.7.1 ext.data.model与ext.data.field
6.7.2 使用ext.data.proxy.proxy和ext.data.reader.reader读取数据
6.7.3 ext.data.store及其子类
6.8 使用ext.grid.panel生成表格
6.8.1 使用ext.grid.panel生成表格
6.8.2 使用ext.grid.column.column定义列
6.8.3 使用ext.grid.panel显示远程数据
6.8.4 对ext.grid.panel表格进行分页
6.8.5 对本地数据进行分页
6.8.6 表格数据排序和过滤
6.8.7 通过表格特性对表格数据进行分组
6.8.8 开发动态编辑的表格
6.8.9 允许拖动数据的表格
6.8.10 使用ext.grid.column.action 操作表格数据
6.9 使用ext.tree.panel生成树
6.9.1 树有关的类及简单树
6.9.2 添加、删除、修改树节点
6.9.3 带复选框的树节点