SitePen: Creating and Enhancing Dojo Classes
You have probably noted over the past few months that I've been working a lot with the Dojo Toolkit. SitePen has been kind enough to allow me to guest blog about a Dojo topic I find very interesting: creating and enhancing Dojo classes. From the post:
Like all top-notch JavaScript toolkits, Dojo tries to make its classes as flexible as possible, knowing that users of the toolkit may have different ideas about how a given class or class method should work. Luckily, Dojo provides you a number of methods by which you can subclass or modify existing classes. Let's examine a few ways you can make Dojo classes exactly the way you like.
Click here to check it out!
![CSS Filters]()
CSS filter support recently landed within WebKit nightlies. CSS filters provide a method for modifying the rendering of a basic DOM element, image, or video. CSS filters allow for blurring, warping, and modifying the color intensity of elements. Let's have...
![Detect DOM Node Insertions with JavaScript and CSS Animations]()
I work with an awesome cast of developers at Mozilla, and one of them in Daniel Buchner. Daniel's shared with me an awesome strategy for detecting when nodes have been injected into a parent node without using the deprecated DOM Events API.
![JavaScript Copy to Clipboard with Branding]()
I published a post a year ago detailing how you can copy to the clipboard using JavaScript. The post was very popular and why would it be? Copying content from a webpage without needing to use the default browser functions is awesome. One trend I've...
![Web Audio API]()
The Web Audio API allows developers to load and decode audio on demand using JavaScript. The more I evaluate awesome games for Firefox OS TVs, the more I get to learn about these APIs that I normally wouldn't touch. The following is a very basic introduction to the WebAudio API...
Hi,
Maybe you’ll be able to help me with understanding new way of class definition in new dojo. I’m using latest version of dojo. I try to define a few classes in separate files. Example (js/TwitterManager.js):
require([ "dojo/_base/declare", "dojo/request/script"], function( declare, script) { declare("TwitterManager", script, { // The default username username: "defaultUser", get: function() { script.get("http://search.twitter.com/search.json", { jsonp: "callback", query: {q: "#dojo"} }).then(function(response){ //we're only interested in response.results, so strip it off and return it return response.results; }); } });});Then I try to instantiate this class in main file (index.html):
require(["dojo/on", "dojo/dom", "dojo/query", "dojo/mouse", "dojo/domReady!"], function(on, dom, query, mouse) { var x = new TwitterManager(); var results = x.get(); });This code doesn’t work. But when I remove from class definition “request/script” module it works fine. I really need to use “script.get” method in this class. Of course all code might be put in index.html :) but I look for OOP approach in dojo 1.8.
Thanks