Basis of JavaScript Structure with Dojo

Dojo is a JavaScript Framework Kit (software components kit) which is somehow less famous than jQuery, but yet it possess almost the same features. Very easy to install and lightweight, it allows you to (logically) organize your JavaScript code in JavaScript classes, as well as attributes and methods. You can use the JavaScript inheritance concepts and inclusions of classes into each other.

But that's not all: Dojo comes another framework called: "Dijit". It contains among others many (fully coded) graphical tools such as calendars, windows fade or even "displayers" to easily organize your site as tabs (for example).


Sampled by © JavaScriptBank.com

You use Javascript to animate your website, but your code lacks of structure. Your JavaScript functions are scattered in <script> tags placed all around and you would like to clean this up? Then Dojo is for you.

Installing Dojo

The installation of Dojo is done in three steps: download, inclusion on the site and loading Dojo when the opening the site.

Download Dojo

The best way to get Dojo is to go directly to download the latest stable version from the official website: http://dojotoolkit.org/download/

Installing Dojo

Once downloaded, you will have three folders: "dojo", "dijit" and "dojox" (the latter is in fact an extension of the basic framework).

Copy the three folders to the root of your website (or in a subfolder).

Loading Dojo when the opening the site

Last step, the most important: ask the user's browser to load the framework when loading the site. For this, simply place the following in the "head": a tag source in the "head"

<head>    
   <script src=\"../../dojo/dojo.js\" type=\"text/javascript\"></script>    
</head> 

Where "dojo.js" is the main page of the Javascript framework. Simply edit the path to the dojo folder according to your current installation!

That's it! Dojo is now ready for use on your site!

Using Dojo

How to use the framework?

The addOnLoad method

The dojo.addOnLoad() method: This method is called when the site us loaded. To end the session simply use the dojo.addOnUnload() method, upon closing the website.

Simply place in the home page of your site a JS script calling this method:

<script type="text/javascript">    
   dojo.addOnLoad(    
      function() {    
       // Place the code to be launch when site is loaded here   
      }    
   );    
</script>

The "Application" class

Here below, you will learn how to create a Javascript class via Dojo, using the "Application" class.

Start by creating a "Application.js" file.

To illustrate its use, let's pretend that this class is at the root of the site, in the "mysite" folder, and in the "javascript" subfolder: /mysite/javascript/

Ceating a JS class:

dojo.provide('mysite.javascript.Application');    

dojo.declare('mysite.javascript.Application', null, {    
   myFirstArgument: null,    
   mySecondArgument: null,    

   constructor: function(param1, param2) {    
      myFirstArgument = param1;    
      // Class constructor code.    
   },    

   method1: function(param){    
   },    

   method2: function(){    
   }    
});

Here we see several things:

  • The dojo.provide function is called, as parameter we used the path to the class file. This allows Dojo "know" that the Application class exists.
  • The dojo.declare function is called, in which the code for the Application class is found. This method takes three parameters:
    • the classpath
    • a boolean
    • the content of the class, namely:
      • the attributes of classes, initialized to "null" and followed by a comma.
      • the first method: the constructor, which may or may not have parameters.
      • The other class method (optional).
    • Finally braces and closing parentheses of the method stated.

Each attribute and method is followed by a comma to separate it from other, except the last.

Contents of the Application class

As example:

dojo.provide ('monsite.javascript.Application');
dojo.declare ('monsite.javascript.Application', null, {
   _user: null,
     
   constructor: function (userParam) {
      this._utilisateur = userParam;
   }

   start: function () {
      alert (this._utilisateur);
   }
});

Specifically, here we will create the Application class with a string as parameter, pass the parameter attribute, and then call a method "start ()" which will display this string.

Calling the Class

Back to dojo.addOnLoad. Here we will create an instance of our application class and display a specific string.

The code is as follows:

<script type="text/javascript">    
   dojo.addOnLoad(    
      function() {    
         dojo.require('monsite.javascript.Application');    
         var appli = new monsite.javascript.Application("Salut CommentCaMarche");    
         appli.start();    
      }    
   );    
</script> 

The steps are:

  • Call the dojo.require() method
  • Creating an instance of the Application class using a constructor.
  • Call the start() method of the Application class, which therefore responsible for displaying the previous string.

Language
Translate this page to English Translate this page to French Translate this page to Vietnamese

Recent articles
How to open a car sharing service
Vue developer as a vital part of every software team
Vue.js developers: hire them, use them and get ahead of the competition
3 Reasons Why Java is so Popular
Migrate to Angular: why and how you should do it
The Possible Working Methods of Python Ideology
JavaScript Research Paper: 6 Writing Tips to Craft a Masterpiece
Learning How to Make Use of New Marketing Trends
5 Important Elements of an E-commerce Website
How To Create A Successful Prototype For Your PCB


Top view articles
Top 10 Beautiful Christmas Countdown Timers
Adding JavaScript to WordPress Effectively with JavaScript Localization feature
65 Free JavaScript Photo Gallery Solutions
16 Free Code Syntax Highlighters by Javascript For Better Programming
Best Free Linux Web Programming Editors
Top 10 Best JavaScript eBooks that Beginners should Learn
Top 50 Most Addictive and Popular Facebook mini games
More 30 Excellent JavaScript/AJAX based Photo Galleries to Boost your Sites
Top 10 Free Web Chat box Plug-ins and Add-ons
The Ultimate JavaScript Tutorial in Web Design


Free JavaScript Tutorials & Articles
at www.JavaScriptBank.com