- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
内容 目录
1 简介 3
2 Dojo 工具包:JavaScript 开发的水槽(Kitchen Sink )3
3 设置和配置Dojo 4
3.1 选择正确的 Dojo 创建4
3.2 动态加载package5
3.3 定制的创建 5
4 应用:旅行路线编辑器 6
5 DOM 和 HTML 效果 6
5.1 处理DOM
5.2 Dojo 的HTML 效果8
6 使用 dojo.io.bind() 的Aj ax 远程调用 8
6.1.1 淡出和移除9
6.1.2 使用XMLHttpRequest 来告诉服务器发生了什么 9
7 拖放操作 10
7.1.1 连接所有的天 11
7.1.2 连接单个的天 11
7.1.3 onLoad 11
8 结论 12
9 作者简历 12
1 简介
当你开始建造一个Ajax 应用时,你很快就会遇到一些情形,让你感觉自己好像是在重新发明轮子。
大量的开发者一想到Ajax,就会直接扑向XMLH pReques 对象,但这仅仅只是一个开始,而且是 Ajax
开发中很容易的部分。
当你在建造 JavaScrip 富客户端应用时,你会遇到大量令人烦恼的事情。浏览器的兼容性、对于降
级(degradation)的支持、混杂在一起的DOM 处理、还有那些鲜血淋淋的 hack 技巧(例如离线存储),
所有这些事情都会冒出来。
这篇文章将会为你介绍一个远远超出对 XHR 进行简单封装的工具包。它是那种每个人只要开发富客
户端的Ajax 应用都应该使用的工具包。没有了它,你就是一个残废的开发者,只能依靠自己的力量来蹒
跚前行。
与其列出Dojo 工具包可以使用的API,我们不如考察一个简单的应用,看看在实际开发中如何使用
这个库的各个部分。
我们将会讨论:
• Dojo 是什么
• 如何设置 Dojo
• 实际使用 DOM 和 HTML 效果
• 通过dojo.io.bind()实现Ajax 远程调用
• 拖放(Drag and Drop)操作
让我们开始吧!
2 Dojo 工具包:JavaScrip 开发的水槽 (Ki chen Sink)
Dojo 工具包是什么?它是一个框架还是一个库 这个名字本身究竟意味着什么 Alex
Russell,Dojo 工具包的创建者之一,认为它是一个你可以用来建造 JavaScrip 应用的库。
它的内涵比你可能想到的更加丰富,因为它在一个顶级项目的一组package 中包含了如此众多的功
能。
Dojo 中包含有很多JavaScrip 编写的子package,负责处理当你在建造一个 JavaScrip 应用时通常
必须要自己来编写的基础 (infrastructure)工作。它封装了跨浏览器的令人烦恼的代码,这样你就不
必担心它们会来给你捣乱。它可以帮助你更加容易地处理DOM。它在不同的浏览器中可以将
XMLH pReques 对象降级为使用其他的远程调用机制(译者注:例如,那些不支持XMLH pReques 对象
的浏览器),同时为你提供了最简单的和容易使用的API。
JavaScrip 并非仅仅是关于浏览器的,它还可以运行在不同的宿主环境中,Dojo 对此也提供了支持。
如果你想要在服务器端编写JavaScrip ,仍然可以使用 Dojo 来使得代码更加简单。
为了使你获得一个关于这个框架的感性认识,我们来列出其中的package:
• dojo.collections:很有用的集合数据结构 (Lis 、Query、Se 、Stack、Dictionary...)
• dojo.crypto:实现加密功能的API (Blowfish、MD5、Rijndael、SHA...)
• dojo.date:无须编写丑陋的代码来解析日期格式。
• dojo.dnd:拖放功能的辅助API。我们将要建造一个支持拖放功能的应用。
• dojo.even :事件驱动的API,支持AOP 开发,以及主题/队列的功能。
• dojo.lfx:HTML 和 SVG效果库。我们将在例子中使用这些效果。
• dojo.animation:基于
文档评论(0)