Enviar pesquisa
Carregar
Zero To Dojo
•
15 gostaram
•
2,721 visualizações
P
Peter Higgins
Seguir
Slides From my talk at SpringOne America 2008 - Dojo: 0 to Production
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 46
Baixar agora
Baixar para ler offline
Recomendados
Introduction To Dojo
Introduction To Dojo
yoavrubin
Complete Dojo
Complete Dojo
Girish Srivastava
Dojo toolkit
Dojo toolkit
Vanessa Me Tonini
The Dojo Toolkit An Introduction
The Dojo Toolkit An Introduction
Jeff Fox
Advanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojo
Fu Cheng
Moving to Dojo 1.7 and the path to 2.0
Moving to Dojo 1.7 and the path to 2.0
James Thomas
Dojo javascript toolkit
Dojo javascript toolkit
Predhin Sapru
Dojo tutorial
Dojo tutorial
Girish Srivastava
Recomendados
Introduction To Dojo
Introduction To Dojo
yoavrubin
Complete Dojo
Complete Dojo
Girish Srivastava
Dojo toolkit
Dojo toolkit
Vanessa Me Tonini
The Dojo Toolkit An Introduction
The Dojo Toolkit An Introduction
Jeff Fox
Advanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojo
Fu Cheng
Moving to Dojo 1.7 and the path to 2.0
Moving to Dojo 1.7 and the path to 2.0
James Thomas
Dojo javascript toolkit
Dojo javascript toolkit
Predhin Sapru
Dojo tutorial
Dojo tutorial
Girish Srivastava
Angularjs vs Dojo toolkit | SuperSpeaker@CodeCamp Iasi 2014
Angularjs vs Dojo toolkit | SuperSpeaker@CodeCamp Iasi 2014
Endava
How dojo works
How dojo works
Amit Tyagi
Dojo & HTML5
Dojo & HTML5
Mike Wilcox
Rich internet application development using the dojo toolkit
Rich internet application development using the dojo toolkit
alexklaeser
Building Dojo in the Cloud
Building Dojo in the Cloud
James Thomas
Jquery dojo slides
Jquery dojo slides
helenmga
dojo.Patterns
dojo.Patterns
Peter Higgins
Dojo: Beautiful Web Apps, Fast
Dojo: Beautiful Web Apps, Fast
Gabriel Hamilton
jQuery Tips Tricks Trivia
jQuery Tips Tricks Trivia
Cognizant
Dojo: Getting Started Today
Dojo: Getting Started Today
Gabriel Hamilton
JavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your code
Laurence Svekis ✔
The jQuery Library
The jQuery Library
LearnNowOnline
Better Selenium Tests with Geb - Selenium Conf 2014
Better Selenium Tests with Geb - Selenium Conf 2014
Naresha K
JavaOne TS-5098 Groovy SwingBuilder
JavaOne TS-5098 Groovy SwingBuilder
Andres Almiray
Starting with jQuery
Starting with jQuery
Anil Kumar
JavaScript Libraries (@Media)
JavaScript Libraries (@Media)
jeresig
ActiveDOM
ActiveDOM
Felix Geisendörfer
Node.js in action
Node.js in action
Simon Su
State of jQuery and Drupal
State of jQuery and Drupal
jeresig
Why and How to Use Virtual DOM
Why and How to Use Virtual DOM
Daiwei Lu
The Dojo Build System
The Dojo Build System
klipstein
Trimming The Cruft
Trimming The Cruft
Peter Higgins
Mais conteúdo relacionado
Mais procurados
Angularjs vs Dojo toolkit | SuperSpeaker@CodeCamp Iasi 2014
Angularjs vs Dojo toolkit | SuperSpeaker@CodeCamp Iasi 2014
Endava
How dojo works
How dojo works
Amit Tyagi
Dojo & HTML5
Dojo & HTML5
Mike Wilcox
Rich internet application development using the dojo toolkit
Rich internet application development using the dojo toolkit
alexklaeser
Building Dojo in the Cloud
Building Dojo in the Cloud
James Thomas
Jquery dojo slides
Jquery dojo slides
helenmga
dojo.Patterns
dojo.Patterns
Peter Higgins
Dojo: Beautiful Web Apps, Fast
Dojo: Beautiful Web Apps, Fast
Gabriel Hamilton
jQuery Tips Tricks Trivia
jQuery Tips Tricks Trivia
Cognizant
Dojo: Getting Started Today
Dojo: Getting Started Today
Gabriel Hamilton
JavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your code
Laurence Svekis ✔
The jQuery Library
The jQuery Library
LearnNowOnline
Better Selenium Tests with Geb - Selenium Conf 2014
Better Selenium Tests with Geb - Selenium Conf 2014
Naresha K
JavaOne TS-5098 Groovy SwingBuilder
JavaOne TS-5098 Groovy SwingBuilder
Andres Almiray
Starting with jQuery
Starting with jQuery
Anil Kumar
JavaScript Libraries (@Media)
JavaScript Libraries (@Media)
jeresig
ActiveDOM
ActiveDOM
Felix Geisendörfer
Node.js in action
Node.js in action
Simon Su
State of jQuery and Drupal
State of jQuery and Drupal
jeresig
Why and How to Use Virtual DOM
Why and How to Use Virtual DOM
Daiwei Lu
Mais procurados
(20)
Angularjs vs Dojo toolkit | SuperSpeaker@CodeCamp Iasi 2014
Angularjs vs Dojo toolkit | SuperSpeaker@CodeCamp Iasi 2014
How dojo works
How dojo works
Dojo & HTML5
Dojo & HTML5
Rich internet application development using the dojo toolkit
Rich internet application development using the dojo toolkit
Building Dojo in the Cloud
Building Dojo in the Cloud
Jquery dojo slides
Jquery dojo slides
dojo.Patterns
dojo.Patterns
Dojo: Beautiful Web Apps, Fast
Dojo: Beautiful Web Apps, Fast
jQuery Tips Tricks Trivia
jQuery Tips Tricks Trivia
Dojo: Getting Started Today
Dojo: Getting Started Today
JavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your code
The jQuery Library
The jQuery Library
Better Selenium Tests with Geb - Selenium Conf 2014
Better Selenium Tests with Geb - Selenium Conf 2014
JavaOne TS-5098 Groovy SwingBuilder
JavaOne TS-5098 Groovy SwingBuilder
Starting with jQuery
Starting with jQuery
JavaScript Libraries (@Media)
JavaScript Libraries (@Media)
ActiveDOM
ActiveDOM
Node.js in action
Node.js in action
State of jQuery and Drupal
State of jQuery and Drupal
Why and How to Use Virtual DOM
Why and How to Use Virtual DOM
Semelhante a Zero To Dojo
The Dojo Build System
The Dojo Build System
klipstein
Trimming The Cruft
Trimming The Cruft
Peter Higgins
Bubbles & Trees with jQuery
Bubbles & Trees with jQuery
Bastian Feder
IPhone Web Development With Grails from CodeMash 2009
IPhone Web Development With Grails from CodeMash 2009
Christopher Judd
Creating Custom Dojo Widgets Using WTP
Creating Custom Dojo Widgets Using WTP
nsandonato
YUI 3
YUI 3
Dav Glass
Developer Student Clubs NUK - Flutter for Beginners
Developer Student Clubs NUK - Flutter for Beginners
Jiaxuan Lin
Simple web browser
Simple web browser
Sohag Babu
JavaScript Library Overview
JavaScript Library Overview
jeresig
Developing a Joomla 3.x Component using RAD FOF- Part 2: Front-end + demo - J...
Developing a Joomla 3.x Component using RAD FOF- Part 2: Front-end + demo - J...
Peter Martin
Nagios Conference 2012 - Eric Loyd - Nagios Implementation Case Eastman Kodak...
Nagios Conference 2012 - Eric Loyd - Nagios Implementation Case Eastman Kodak...
Nagios
How to develop nice portlet with Juzu framework
How to develop nice portlet with Juzu framework
Nguyễn Tuyến
Maximize the power of OSGi
Maximize the power of OSGi
David Bosschaert
Maximise the Power of OSGi - Carsten Ziegeler & David Bosschaert
Maximise the Power of OSGi - Carsten Ziegeler & David Bosschaert
mfrancis
Extend sdk
Extend sdk
Harsha Nagaraj
Test02
Test02
testingPdf
Accelerated Adoption: HTML5 and CSS3 for ASP.NET Developers
Accelerated Adoption: HTML5 and CSS3 for ASP.NET Developers
Todd Anglin
JavaScript Libraries (Kings of Code)
JavaScript Libraries (Kings of Code)
jeresig
a friend in need-a js indeed / Yonatan levin
a friend in need-a js indeed / Yonatan levin
geektimecoil
A friend in need - A JS indeed
A friend in need - A JS indeed
Yonatan Levin
Semelhante a Zero To Dojo
(20)
The Dojo Build System
The Dojo Build System
Trimming The Cruft
Trimming The Cruft
Bubbles & Trees with jQuery
Bubbles & Trees with jQuery
IPhone Web Development With Grails from CodeMash 2009
IPhone Web Development With Grails from CodeMash 2009
Creating Custom Dojo Widgets Using WTP
Creating Custom Dojo Widgets Using WTP
YUI 3
YUI 3
Developer Student Clubs NUK - Flutter for Beginners
Developer Student Clubs NUK - Flutter for Beginners
Simple web browser
Simple web browser
JavaScript Library Overview
JavaScript Library Overview
Developing a Joomla 3.x Component using RAD FOF- Part 2: Front-end + demo - J...
Developing a Joomla 3.x Component using RAD FOF- Part 2: Front-end + demo - J...
Nagios Conference 2012 - Eric Loyd - Nagios Implementation Case Eastman Kodak...
Nagios Conference 2012 - Eric Loyd - Nagios Implementation Case Eastman Kodak...
How to develop nice portlet with Juzu framework
How to develop nice portlet with Juzu framework
Maximize the power of OSGi
Maximize the power of OSGi
Maximise the Power of OSGi - Carsten Ziegeler & David Bosschaert
Maximise the Power of OSGi - Carsten Ziegeler & David Bosschaert
Extend sdk
Extend sdk
Test02
Test02
Accelerated Adoption: HTML5 and CSS3 for ASP.NET Developers
Accelerated Adoption: HTML5 and CSS3 for ASP.NET Developers
JavaScript Libraries (Kings of Code)
JavaScript Libraries (Kings of Code)
a friend in need-a js indeed / Yonatan levin
a friend in need-a js indeed / Yonatan levin
A friend in need - A JS indeed
A friend in need - A JS indeed
Mais de Peter Higgins
Jsconf.us.2013
Jsconf.us.2013
Peter Higgins
has("builds")
has("builds")
Peter Higgins
has.js
has.js
Peter Higgins
Just JavaScript
Just JavaScript
Peter Higgins
Your Library Sucks, and why you should use it.
Your Library Sucks, and why you should use it.
Peter Higgins
Txjs
Txjs
Peter Higgins
dojo.things()
dojo.things()
Peter Higgins
Mais de Peter Higgins
(7)
Jsconf.us.2013
Jsconf.us.2013
has("builds")
has("builds")
has.js
has.js
Just JavaScript
Just JavaScript
Your Library Sucks, and why you should use it.
Your Library Sucks, and why you should use it.
Txjs
Txjs
dojo.things()
dojo.things()
Último
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Precisely
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
Lorenzo Miniero
How to write a Business Continuity Plan
How to write a Business Continuity Plan
Databarracks
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
LoriGlavin3
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
ScyllaDB
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Fwdays
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
LoriGlavin3
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
LoriGlavin3
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Commit University
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
Dilum Bandara
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
BookNet Canada
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
LoriGlavin3
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
Fwdays
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
LoriGlavin3
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
gvaughan
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
Hervé Boutemy
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
NavinnSomaal
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
Mattias Andersson
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
LoriGlavin3
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Alex Barbosa Coqueiro
Último
(20)
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
How to write a Business Continuity Plan
How to write a Business Continuity Plan
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Zero To Dojo
1.
0 to Production December
3, 2008 Peter Higgins SpringOne Americas
2.
Me. © SitePen, Inc.
2008. All Rights Reserved
3.
Show of Hands? ©
SitePen, Inc. 2008. All Rights Reserved
4.
Quick Start © SitePen,
Inc. 2008. All Rights Reserved
5.
Notes about Dojo
Long Standing Development Large, Active Developer Base Friendly Professional Community Liberally Licensed, Clean IP © SitePen, Inc. 2008. All Rights Reserved
6.
Notes about Dojo
Comprised of Base, Core, Dijit, and DojoX Uni ed Tools and Components Extras: ShrinkSafe, Build Utils D.O.H. © SitePen, Inc. 2008. All Rights Reserved
7.
Base © SitePen, Inc.
2008. All Rights Reserved
8.
Using Dojo Base
<html> <head> <title>Hello, Dojo</title> <!-- load Dojo from a CDN: --> <script type=quot;text/javascriptquot; src=quot;http://o.aolcdn.com/dojo/1.2/dojo/dojo.xd.jsquot;> </script> </head> <body> </body> </html> © SitePen, Inc. 2008. All Rights Reserved
9.
Aka: dojo.js (26KB
of Joy) Ajax: dojo.xhr, dojo.xhrGet, dojo.xhrPost ... Events: normalization, keys, Objects or Nodes DOM/CSS: dojo.byId, dojo.style, dojo.place, dojo.attr Animation: dojo.fadeIn/Out, dojo.animateProperty Query/NodeList: CSS3 Selectors. aka: All of the Above Advanced JS: dojo.delegate, .hitch, .partial, .exists ... dojo.declare Native JS: forEach, map, lter, some, every, indexOf ... Browser Sni ng: dojo.isIE < 7, isFF, isWebKit ... © SitePen, Inc. 2008. All Rights Reserved
10.
Patterns in Dojo
// style and add class to a node: dojo.addClass(“someNode”, “someClass”); dojo.style(“someNode”, { opacity:0.5, lineHeight:”1.3em” }); dojo.attr(“someNode”, { id:”newId” }); // or chained dojo.query(“#someNode”) .addClass(“someClass”) .attr({ id:”newId” }) .style({ opacity:0.5, lineHeight:”1.3em” }) // connect: dojo.connect(dojo.byId(“foo”), “onclick”, function(e){...}); // or connect: dojo.query(“#foo”).connect(“onclick”, function(e){ ... }); // or sugar: dojo.query(“#foo”).onclick(function(e){ ... }); © SitePen, Inc. 2008. All Rights Reserved
11.
Simple OO, Simulated
Inheritance dojo.declare(“some.Person”, null, { name: ”default”, constructor: function(args){ dojo.mixin(this, args); } }); dojo.declare(“some.Employee”, some.Person, { employeeId: 0 }); var bob = new some.Person({ name:”Bob Bobson” }); var joy = new some.Employee({ name:”Joy”, employeeId:24 }); © SitePen, Inc. 2008. All Rights Reserved
12.
Package System ==
modular code And more... Works with Dojo and custom code Local: dojo.require(“dojo.io.script”); dojo.require(“my.Widget”); Robust: dojo.registerModulePath(“external”, “/external/js”); dojo.require(“external.Thinger”); Easy: dojo.provide(“my.Widget”); Ready: dojo.addOnLoad, .addOnUnLoad ... © SitePen, Inc. 2008. All Rights Reserved
13.
The
Core © SitePen, Inc. 2008. All Rights Reserved
14.
More Patterns
Use at will - everything additive. No dependency tracking - just dojo.require(“it”) Few, if any, “rules” Scale: Grows to t your needs © SitePen, Inc. 2008. All Rights Reserved
15.
Added Joy -
a require() away dojo.data - Uni ed Data API dojo.dnd - Drag and Drop API dojo.fx / dojo.NodeList-fx - Additional Advanced FX dojo.i18n - Internationalization tools dojo.string, dojo.date, dojo.regexp - Common utility dojo.io.iframe, dojo.io.script, dojo.rpc - Advanced IO ... more: dojo.behavior, dojo.html, dojo.gears, dojo.cookie, dojo.parser, dojo.jaxer ... © SitePen, Inc. 2008. All Rights Reserved
16.
Additional Debugging
FireBug Lite Shipped console.* provided in less sane browsers Load with djCon g = { isDebug:true } if(dojo.con g.isDebug){ .. } © SitePen, Inc. 2008. All Rights Reserved
17.
The Dojo Widget
Framework © SitePen, Inc. 2008. All Rights Reserved
18.
Take Your Pick
Compartmentalized Behavior using Existing Markup Fully dynamic, reusable Templated components Extend existing or Create ... © SitePen, Inc. 2008. All Rights Reserved
19.
Includes Suite of
Widgets Layouts - Accordions, Tabs Form - Validation and more ... WYSIWYG Editor Tree, Sliders, ProgressBar ... © SitePen, Inc. 2008. All Rights Reserved
20.
Setup is Easy
<html> <head> <title>index.html</title> <!-- some css --> <link rel=”stylesheet” href=”dojotoolkit/dijit/themes/tundra/tundra.css”> <script type=quot;text/javascriptquot; src=quot;dojotoolkit/dojo/dojo.jsquot;></script> </head> <body class=”tundra”> </body> </html> © SitePen, Inc. 2008. All Rights Reserved
21.
Flexible Instantiation
// load the resource: dojo.require(“dijit.dijit”); // Base Dijit dojo.require(“dijit.Dialog”); // Dialog Code // create programatically: var myDialog = new dijit.Dialog({ title:”Login” }, “formArea”); <!-- or declaratively in markup --> <div id=”formArea” dojoType=”dijit.Dialog” title=”Login”> <p>...</p> </div> // access the instance: dijit.byId(“formArea”).show(); // myDialog.show(); © SitePen, Inc. 2008. All Rights Reserved
22.
CSS Driven Skinning
Three full themes: Tundra Soria Nihilo Fully customizable Even easier with constraints: Embedded WebKit ? © SitePen, Inc. 2008. All Rights Reserved
23.
Full Localization (i18n)
Support © SitePen, Inc. 2008. All Rights Reserved
24.
Full Accessibility (a11y)
Support Screen reader support High contrast mode support Keyboard navigation ... with every Dijit © SitePen, Inc. 2008. All Rights Reserved
25.
Custom Widgets
dojo.provide(“my.Widget”); dojo.require(“dijit._Widget”); dojo.require(“dijit._Templated”); // define: dojo.declare(“my.Widget”, [dijit._Widget, dijit._Templated], { value:”default”, templatePath: dojo.moduleUrl(“my.templates”, “Widget.html”, postCreate: function(args){ // init code } }); // instantiate: new my.Widget({ value:”bar” }, “someNode”); // declarative way: <input id=”someNode” dojoType=”my.Widget” value=”Foo”> © SitePen, Inc. 2008. All Rights Reserved
26.
Custom Extensions
Leverage the Dijit widget system for speci c purposes Reuse Existing a11y and i18n code in Dijit © SitePen, Inc. 2008. All Rights Reserved
27.
Custom Widgets: Subclassing
dojo.require(“dijit.Dialog”); // “subclassing”: dojo.declare(“my.Dialog”, dijit.Dialog, { canShow: true, show: function(){ if(this.canShow){ // then call inherited: this.inherited(arguments); } } }); var showable = new my.Dialog({ canShow: false }); © SitePen, Inc. 2008. All Rights Reserved
28.
Ultra Rapid Prototyping
<div id=”foo” dojoType=”dijit.Dialog” title=”Hello”> <p> ... </p> <script type=”dojo/method” event=”hide”> // override instance’s hide() method ... test. </script> <script type=”dojo/connect” event=”show”> // monitor instance’s show() method ... </script> </div> © SitePen, Inc. 2008. All Rights Reserved
29.
Helping Designers
/* Convenience Rules added to <html> element */ .mybox { width:250px; } /* love the quirks: */ .dj_ie6 .mybox { margin-right:1px } .dj_ie7 .mybox { margin-right:2px; } .dj_quirks .mybox { margin:3px; } © SitePen, Inc. 2008. All Rights Reserved
30.
© SitePen, Inc.
2008. All Rights Reserved
31.
Extensions, Extras, Experiments
Extend Dijit: dojox.widget, dojox.layout, dojox.form Additional FX: dojox.fx Morph, Text, Extras ... Image Gadgets: FlickrBadge, Lightbox (Nano), SlideShow ... Comet: dojox.cometd Advanced IO: RPC, REST, SMD, ScriptFrame ... © SitePen, Inc. 2008. All Rights Reserved
32.
... there’s more:
DojoX GFX Cross-browser vector graphics GFX API, Charting: 2d / 3d, GFX Animation © SitePen, Inc. 2008. All Rights Reserved
33.
DojoX: DataGrid
Fully dojo.data-Ready Lazy Row Selection,Virtual Scrolling Simplified Use: Layout Ready, Easy instantiation © SitePen, Inc. 2008. All Rights Reserved
34.
dojox.data Stores
AndOrReadStore GoogleSearchStore AppStore HtmlStore AtomReadStore jsonPathStore CouchDBRestStore jsonRestStore CssRuleStore OpmlStore CsvStore QueryReadStore FileStore ServiceStore FlickrRestStore / S3Store FlickrStore WikipediaStore GoogleFeedStore XmlStore © SitePen, Inc. 2008. All Rights Reserved
35.
Other Goodies
dojox.av - Audio / Video helpers dojox.dtl - django templating system implementation dojox.o , dojox.storage - O ine helpers dojox.lang - Advanced JS techniques dojox.xmpp - Full protocol implementation dojox.validate - Regexps + Functions ... much, much more! © SitePen, Inc. 2008. All Rights Reserved
36.
Simple Gems: Google
Analytics Why Write This? <script type=quot;text/javascriptquot;> var gaJsHost = ((quot;https:quot; == document.location.protocol) ? quot;https://ssl.quot; : quot;http://www.quot;); document.write(unescape(quot;%3Cscript src='quot; + gaJsHost + quot;google- analytics.com/ga.js' type='text/javascript'%3E%3C/script%3Equot;)); </script> <script type=quot;text/javascriptquot;> var pageTracker = _gat._getTracker(quot;UA-xxxxxx-xquot;); pageTracker._trackPageview(); </script> © SitePen, Inc. 2008. All Rights Reserved
37.
Simple Gems: Google
Analytics with Dojo Just Write This: // load the resource dojo.require(“dojox.analytics.Urchin”); <!-- and create in markup --> <div dojoType=”dojox.analytics.Urchin” acct=”12345-UA-23”></div> // or in script: new dojox.analytics.Urchin({ acct:”UA-xxxxx-x” }); © SitePen, Inc. 2008. All Rights Reserved
38.
in Production © SitePen,
Inc. 2008. All Rights Reserved
39.
Dojo Build System
Reduce number of HTTP requests Template Interning and resource concatenation Reduce JavaScript le size: Remove Comments and whitespace Variable obfuscation (ShrinkSafe) CSS Optimization Comment Removal @import “...” concatenation StripConsole options © SitePen, Inc. 2008. All Rights Reserved
40.
Advanced Builds
Stubs Dojo (6k dojo.js) Custom Base “Layers” Automatic dependency tracking Cross-dependent layers RestoreRequire X-Domain Dojo - Local CDN BuildExclude syntax © SitePen, Inc. 2008. All Rights Reserved
41.
D.O.H - Unit
test Suite Supports Build Up, Tear Down, sync or async Testing doh.robot - Automated UI Unit testing © SitePen, Inc. 2008. All Rights Reserved
42.
Resources © SitePen, Inc.
2008. All Rights Reserved
43.
Basic Documentation
Full API Docs: http://api.dojotoolkit.org Full On-Line Docs: http://docs.dojocampus.org O ine Docs: http://sitepen.com/labs/toolbox Tutorials, Blogs, Examples: http://dojocampus.org © SitePen, Inc. 2008. All Rights Reserved
44.
Additional Documentation
Dojo Dead Trees! © SitePen, Inc. 2008. All Rights Reserved
45.
That’s © SitePen, Inc.
2008. All Rights Reserved
46.
Questions? © SitePen, Inc.
2008. All Rights Reserved
Baixar agora