Dojo 学习要点
由于要学习 ArcGIS Server JavaScript API,在此 API 中 ESRI 采用的是 JavaScript 开源框架 Dojo,于是先学习了点 Dojo 的知识,算是为以后的工作做准备吧。
其实开源 JavaScript 框架很多,比如最早的 prototype,很实用的 jQuery,Yahoo 的 Yui,超炫的 ExtJS 等,至于为什么 ESRI 采用 Dojo,我们也不必去猜测,肯定有人家的道理滴,好好学习 Dojo 才是硬道理。
学习 Dojo 之前,务必要掌握一些必要的J avaScript 知识,如 json 等。由于以前 JavaScript 自认为学的还可以,ExtJS 也算是入门了,相对来说学习 Dojo 容易很多了。
现在 Dojo 的最新版本是 1.5.0 版,在其官网上可以下载到 dojo-release-1.5.0.zip 压缩文件。
言归正传,下面为自己的一些学习要点,就权当是做个私人笔记吧。
代码如下:
1,通过dojo.require以类似C编程中#include或者Java中import的方式加载所需的部件
如dojo.require("dojo.parser");dojo.require("dijit.form.Button");
2,跨域自定义模块
Dojo配置,djConfig="baseUrl:'./'"
注册模块的路径,dojo.registerModulePath("dtdg","./dtdg");
加载自定义模块,dojo.require("dtdg.foo");
3,本地工具箱模块
直接加载自定义模块,dojo.require("dtdg.foo");
4,为对象注册事件
dojo.connect();
5,json和字符串之间转换
dojo.fromJson(/*String*/ json);//返回JavaScript对象,json对象
dojo.toJson(/*Object*/ json, /*Boolean*/ prettyPrint);//返回字符串
6,Ajax通信
dojo.xhrGet(/*Object*/ args);dojo.xhrPost(/*Object*/ args);
dojo.xhr(/*String*/ method, /*Object*/ args, /*Boolean?*/ hasBody);
7,本地化
djConfig="dojo.local:'zh'"
8,控件、布局等都在dijit中
相关推荐
-
Dojo获取下拉框的文本和值实例代码
Dojo Dojo是一个用javascript语言实现的开源DHTML工具包.它是在几个项目捐助基础上建立起来的(nWidgets,Burstlib,f(m)),这也是为什么叫它a"unified"toolkit的原因.Dojo的目标是解决开发DHTML应用程序遇到的那些,长期存在.历史问题(historical problems with DHTML).跨浏览器问题. 1.问题背景 这里有一个下拉框,其中选项为一年四季,选中后打印下拉框的值和文本 2.实现源码 <!DOCTYP
-
JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景简述
所以Javascript已经成为了web开发最最基本的要求之一了. 而在现实的敏捷开发中,我们通常会选择一个JS框架来取代繁琐的Native Javascript的编写.你会发现这样会节省很多的时间,写的代码也很清晰便捷.(当然在学生时代的是有也质疑过,用框架会对原生态的 Javascript理解不深入,其实这是多虑了的.在对框架的深入的同时,对原生的js也会理解的更透彻一些.成为一个精明的开发者,两者是相依相偎的.而最好的状态就是想Qzone前端一样,完全按照自己的需求开发出一套JS,CSS框
-
dojo学习第二天 ajax异步请求之绑定列表
用户不喜欢滚动条,于是我们做成了选项卡切换,用户不喜欢刷新页面,于是我们就要使用ajax了,前些年,几乎每个web端开发人员,都以懂得一点点ajax而自豪,但知道使用ajax是远远不够的,因为技术是为人而服务的,不能滥用技术,你总不能为了验证一个文本框textbox而去异步请求一次.我还遇到过有人,更新用户信息的时候,使用ajax更新,用户信息中的图片,又使用回发来更新,一个更新中,先ajax卡在那,然后再回发,你说这是多么2的行为?这种人还不少,我还遇到过有人用ajax更新后再location
-
dojo 之基础篇(三)之向服务器发送数据
向服务器发送数据有get和post两种. 首先,要将body中的html代码替换为 <button dojoType="Button" widgetId="helloButton">Hello World!</button> <br> 请输入名称: <input type="text" id="name">不输入数据,怎么提交数据呢. get我们只要将基础篇(二)中的: func
-
dojo学习第一天 Tab选项卡 实现
其实不然,用<精通Dojo>里的话来说就是"Dojo不只是一个程序库,而是一个工具包",它比其他所有的JS库的插件更全面更广阔.它包含大约40个用户界面控件.1个图形框架.cometd支持.1个打包系统,还有其他的一些东西. 从dojo官方网站 上下载最新版1.6,解压下来,它有三个文件夹分别是: 1. dojo: 是Dojo基础,你要做的其它事情都是在它的基础上,类似于jquery.js文件,但比它更丰富了一些其他功能; 2. dijit : Dojo的小部件框架及内建的
-
麻雀虽小五脏俱全 Dojo自定义控件应用
现在Javascript框架.控件库有很多,jQuery.Ext.prototype.MooTools.Dojo等等,这些都是在Google上搜索"javascript+framework"列在第一页的.其中,除了MooTools,其它的都有所了解,但只在项目中用过Ext和Dojo.但一直不太喜欢Ext,性能有问题,新的版本还收费了. 另外,Ext官方提供的例子都是用JavaScript来创建和初始化控件,一个JavaScript配套一个HTML来用,这样管理起来很混乱.而且官方例子是
-
dojo随手记 gird组件引用
我建了一个文件里面代码是网上下的<精通dojo>的代码: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!-- ! Excerpted from "Mastering Dojo", ! published by The Pragmati
-
dojo 之基础篇(二)之从服务器读取数据
本例子沿用 "dojo 之基础篇" 中的内容首先,我们在HelloWorld.html的同一级目录,新建一个文件,名为response.txt,内容为: Welcome to the Dojo Hello World Tutorial 将section 2的代码替换 为以下代码 <!-- SECTION 3 --> <script type="text/javascript"> dojo.require("dojo.io.*&quo
-
Dojo 学习要点
由于要学习 ArcGIS Server JavaScript API,在此 API 中 ESRI 采用的是 JavaScript 开源框架 Dojo,于是先学习了点 Dojo 的知识,算是为以后的工作做准备吧. 其实开源 JavaScript 框架很多,比如最早的 prototype,很实用的 jQuery,Yahoo 的 Yui,超炫的 ExtJS 等,至于为什么 ESRI 采用 Dojo,我们也不必去猜测,肯定有人家的道理滴,好好学习 Dojo 才是硬道理. 学习 Dojo 之前,务必要掌握
-
Dojo 学习笔记入门篇 First Dojo Example
Step 1: Configurate Dojo 从http://www.dojotoolkit.org/downloads 下载最新的Dojo包,并且放到你工程的某一个地方.比如,我就放把我的dojo库放在lib文件夹下(如图一). 图一(文件目录结构) 在你的页面中加入如下代码,那么就完成了最基本的配置. <script type="text/javascript" src="lib/dojo/dojo/dojo.js" djConfig ="
-
推荐dojo学习笔记
在引用dojo.js前,最好声明djConfig对象,以便在加载dojo.js时能够取得所设置的值,虽然在0.3版本以后dojo支持在加载后设置,但是强烈建议你把声明djConfig的代码作为第一段script: 一个完整的djConfig对象定义如下(值均为dojo的默认值) js 代码 var djConfig = { isDebug: false, debugContainerId: "", bindEncoding: "&qu
-
JavaScript组合模式学习要点
组合模式:将一组对象组合成树形结构,并统一对待组合对象和叶对象,忽略它们之间的不同(因为叶对象也可以也可以包含叶对象而成为组合对象),组合模式中的对象只能是一对多的关系,不能出现多对一. 基本单元:一个组合对象包含多个叶对象.每个基本单元又可以是别的组合对象的叶对象类似文件夹与它里面的内容的关系网,一个文件夹或文件又可以是其它文件夹的内容,但一个文件夹或文件不能同时属于多个上级文件夹. 在JavaScript中实现组合模式时,要保证组合对象和叶对象拥有相同的接口方法,对同一组叶对象的操作必须具有
-
javascript事件绑定学习要点
事件绑定分为两种:一种是传统事件绑定(内联模型,脚本模型),一种是现代事件绑定(DOM2级模型).现代事件绑定在传统绑定上提供了更强大更方便的功能. 一 传统事件绑定的问题 传统事件绑定中的内联模型不做讨论,基本很少去用.先来看一下脚本模型,脚本模型将一个函数赋值给一个事件处理函数.传统绑定如: window.onload=function(){ var box=document.getElementById('box'); box.onclick = function(){ alert('Le
-
学java得这样学,学习确实也得这样
引言 软件开发之路是充满荆棘与挑战之路,也是充满希望之路.Java学习也是如此,没有捷径可走.梦想像<天龙八部>中虚竹一样被无崖子醍醐灌顶而轻松获得一甲子功力,是很不现实的.每天仰天大叫"天神啊,请赐给我一本葵花宝典吧",殊不知即使你获得了葵花宝典,除了受自宫其身之苦外,你也不一定成得了"东方不败",倒是成"西方失败"的几率高一点. "不走弯路,就是捷径",佛经说的不无道理. 1.如何学习程
-
Python学习之列表和元组的使用详解
目录 列表和元组简介 列表学习要点 列表的声明语法 列表的读取 列表操作 列表元素的修改和删除 列表元素合并 列表元素顺序变化 元组学习要点 元组基本知识 元组的基本操作 列表和元组简介 如果说在 Python 语言中找一个最优秀的数据类型,那无疑是列表,如果要在推荐一个,那我选择元组,本篇博客我们的重心会放在列表上,元组可以看成不能被修改的列表,所以作为赠品 进行学习即可. 列表是一种非常灵活的数据结构,可以弥补前文字符串类型的很多不足. 正式学习前,还需要记住两个英文单词,列表(list),
-
AngularJS优雅的自定义指令
学习要点 •为什么使用指令 •创建自定义指令 •使用jqLite工作 一.为什么使用自定义指令 NG内置了许多自定义指令,但是它们有时并不能满足你的要求,这是需要我们创建自定义属性. 二.自定义指令 接下来,我们来做一个小案例,当鼠标单击加价后,列表项自动递增,当然列表也是通过指令自动添加的,它本就是一个空的div <!DOCTYPE> <!-- use module --> <html ng-app="exampleApp"> <head
随机推荐
- DB2 数据库创建、表的ixf文件导出导入示例
- mysql修改表结构方法实例详解
- javascript下正则匹配百分比的代码
- java图形界面之布局设计
- Python greenlet实现原理和使用示例
- js表格排序实例分析(支持int,float,date,string四种数据类型)
- PHP中round()函数对浮点数进行四舍五入的方法
- Linux 4.9内核正式发布!来看看更新了什么?
- php+mysql不用递归实现的无限级分类实例(非递归)
- jQuery的链式调用浅析
- jQuery 循环遍历改变a标签的href(实例讲解)
- 编写Python小程序来统计测试脚本的关键字
- C#实现FTP客户端的案例
- Android 解决TextView排版参差不齐的问题
- jquery按回车提交数据的代码示例
- Kotlin Coroutines执行异步加载示例详解
- Vue 框架之动态绑定 css 样式实例分析
- 对python3 Serial 串口助手的接收读取数据方法详解
- VMware 12 下 Ubuntu 16.04 安装图文教程
- elementUI多选框反选的实现代码