In fact, this is not the case. In the words of "Mastering Dojo", "Dojo is not just a library, but a toolkit." It is more comprehensive and broader than all other JS library plug-ins. It contains about 40 user interface controls, a graphics framework, cometd support, a packaging system, and a few other things.
Download the latest version 1.6 from the dojo official website and unzip it. It has three folders:
1. dojo: It is the basis of Dojo. Everything else you want to do is based on it. It is similar to the jquery.js file, but it is richer in other functions;
2. dijit: Dojo’s widget framework and built-in set of widgets. (There are about 40 HTML user widgets);
3 dojox: Dojo extension library, including all functions from table widgets to drawing libraries.
It is enough to understand these. Although it has only been released to 1.6 and has not reached 6.1 like jquery, dojo is definitely powerful. Choosing it will be your lifelong pursuit. (advertising words)
(Note: Dojo was started in 2004, initiated by Alex, and then developed by many DHTML experts, so it is now very mature.)
Next, we are going to configure our first example, are you ready? The dojo journey has officially begun, we are going to make an example of form registration.
First we need to reference its theme style:
Themes are theme styles, and there are already several of them. I selected "tundra" among them, and then quoted dojo.css. Then reference the dojo basic file dojo.js:
Here Pay attention to djConfig. Since we need to use declarative widgets, we need parse. This will be simpler to use. If you use programmatic writing, you don’t need it. Just pay attention to it. Then refer to parser.js and ContentPane.js. Parser is necessary to use declarative style, and ContentPane is necessary for content panel. The way to reference in dojo is to call the require method, which is very similar to require_once in PHP, that is, the file is only referenced once.
<script> <BR>dojo.require("dojo.parser"); <BR>dojo.require('dijit.layout.ContentPane' ); <BR>dojo.require('dijit.layout.TabContainer'); <BR></script>
The "." writing here can be understood as a class under the folder , or namespace, very similar to AS3. Have you noticed that there is an extra TabContainer? This is the tab switching plug-in we are going to use. If we call this plug-in, it's very simple. We just need to specify it with the dojoType attribute where we want to use it.
然后我们来一句句理解, dojoType='dijit.layout.TabContainer'是指让容器拥有tab选项卡功能,dojoType='dijit.layout.ContentPane'这个是指该容器是一个内容块,也就是单个的选项卡.
最后就没了,这个简单的选项卡就完成了。大家是不是觉得很奇怪,我们竟然没写其它的一行代码就完成了这个功能?这就是声明式小插件的好处了,因为你给dojoType声明了,它就会自动去绑定这个功能。
好了,这是我第一天的正式接触dojo,可能有理解错误的地方,大家可以指出来,我们一起学习进步。 如果你喜欢,我会写第二篇甚至更多.
本文的最终示例图:demo演示请查阅:http://www.lovewebgames.com/dojoroot/myStudy/study_001.html
完整代码:
<script> <BR>dojo.require("dojo.parser"); <BR>dojo.require('dijit.layout.ContentPane'); <BR>dojo.require('dijit.layout.TabContainer'); <BR></script>

Python and JavaScript have their own advantages and disadvantages in terms of community, libraries and resources. 1) The Python community is friendly and suitable for beginners, but the front-end development resources are not as rich as JavaScript. 2) Python is powerful in data science and machine learning libraries, while JavaScript is better in front-end development libraries and frameworks. 3) Both have rich learning resources, but Python is suitable for starting with official documents, while JavaScript is better with MDNWebDocs. The choice should be based on project needs and personal interests.

The shift from C/C to JavaScript requires adapting to dynamic typing, garbage collection and asynchronous programming. 1) C/C is a statically typed language that requires manual memory management, while JavaScript is dynamically typed and garbage collection is automatically processed. 2) C/C needs to be compiled into machine code, while JavaScript is an interpreted language. 3) JavaScript introduces concepts such as closures, prototype chains and Promise, which enhances flexibility and asynchronous programming capabilities.

Different JavaScript engines have different effects when parsing and executing JavaScript code, because the implementation principles and optimization strategies of each engine differ. 1. Lexical analysis: convert source code into lexical unit. 2. Grammar analysis: Generate an abstract syntax tree. 3. Optimization and compilation: Generate machine code through the JIT compiler. 4. Execute: Run the machine code. V8 engine optimizes through instant compilation and hidden class, SpiderMonkey uses a type inference system, resulting in different performance performance on the same code.

JavaScript's applications in the real world include server-side programming, mobile application development and Internet of Things control: 1. Server-side programming is realized through Node.js, suitable for high concurrent request processing. 2. Mobile application development is carried out through ReactNative and supports cross-platform deployment. 3. Used for IoT device control through Johnny-Five library, suitable for hardware interaction.

I built a functional multi-tenant SaaS application (an EdTech app) with your everyday tech tool and you can do the same. First, what’s a multi-tenant SaaS application? Multi-tenant SaaS applications let you serve multiple customers from a sing

This article demonstrates frontend integration with a backend secured by Permit, building a functional EdTech SaaS application using Next.js. The frontend fetches user permissions to control UI visibility and ensures API requests adhere to role-base

JavaScript is the core language of modern web development and is widely used for its diversity and flexibility. 1) Front-end development: build dynamic web pages and single-page applications through DOM operations and modern frameworks (such as React, Vue.js, Angular). 2) Server-side development: Node.js uses a non-blocking I/O model to handle high concurrency and real-time applications. 3) Mobile and desktop application development: cross-platform development is realized through ReactNative and Electron to improve development efficiency.

The latest trends in JavaScript include the rise of TypeScript, the popularity of modern frameworks and libraries, and the application of WebAssembly. Future prospects cover more powerful type systems, the development of server-side JavaScript, the expansion of artificial intelligence and machine learning, and the potential of IoT and edge computing.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 Chinese version
Chinese version, very easy to use

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

WebStorm Mac version
Useful JavaScript development tools

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment