应该算是比较常用的例子。摘自官方网站
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2<html>
3 <head>
4 <title>Non-markup widgets via createWidget</title>
5 <script type="text/javascript">
6 var djConfig = { isDebug: true };
7 </script>
8 <script type="text/javascript" src="../../dojo.js"></script>
9 <script type="text/javascript">
10 dojo.require("dojo.string.*");
11 dojo.require("dojo.widget.Button");
12
13 //
14 // Normal tests
15 //
16 dojo.addOnLoad(function() {
17 var w;
18 w = dojo.widget.createWidget("dojo:Button", { caption: "Created as dojo:Button" });
19 dojo.byId("vanilla").appendChild(w.domNode);
20 w = dojo.widget.createWidget("Button", { caption: "Created as Button" });
21 dojo.byId("vanilla").appendChild(w.domNode);
22
23 // Cannot create components via createWidget
24 //var w = dojo.widget.createWidget("dojo:foo");
25 });
26
27 //
28 // Test auto-load
29 //
30 dojo.registerModulePath("acme", "tests/widget/acme");
31 dojo.registerNamespace("acme", "acme.widget",
32 function(name){
33 return "acme."+dojo.string.capitalize(name);
34 });
35
36 dojo.addOnLoad(function() {
37 var w = dojo.widget.createWidget("acme:Button", { caption: "Created with auto-require as acme:Button" });
38 dojo.byId("al").appendChild(w.domNode);
39 });
40
41 //
42 // Test passing a dom node as the first argument to createWidget()
43 //
44
45 </script>
46 </head>
47 <body>
48 <h1>Test createWidget()</h1>
49 <div id="vanilla"></div>
50
51 <h1>Test createWidget()/auto-loading</h1>
52 <p>
53 This tests the ability for createWidget() to automatically load the code for a widget,
54 even though the user hasn't done a dojo.require() for the widget.
55 </p>
56 <div id="al"></div>
57 </body>
58</html>
59
2<html>
3 <head>
4 <title>Non-markup widgets via createWidget</title>
5 <script type="text/javascript">
6 var djConfig = { isDebug: true };
7 </script>
8 <script type="text/javascript" src="../../dojo.js"></script>
9 <script type="text/javascript">
10 dojo.require("dojo.string.*");
11 dojo.require("dojo.widget.Button");
12
13 //
14 // Normal tests
15 //
16 dojo.addOnLoad(function() {
17 var w;
18 w = dojo.widget.createWidget("dojo:Button", { caption: "Created as dojo:Button" });
19 dojo.byId("vanilla").appendChild(w.domNode);
20 w = dojo.widget.createWidget("Button", { caption: "Created as Button" });
21 dojo.byId("vanilla").appendChild(w.domNode);
22
23 // Cannot create components via createWidget
24 //var w = dojo.widget.createWidget("dojo:foo");
25 });
26
27 //
28 // Test auto-load
29 //
30 dojo.registerModulePath("acme", "tests/widget/acme");
31 dojo.registerNamespace("acme", "acme.widget",
32 function(name){
33 return "acme."+dojo.string.capitalize(name);
34 });
35
36 dojo.addOnLoad(function() {
37 var w = dojo.widget.createWidget("acme:Button", { caption: "Created with auto-require as acme:Button" });
38 dojo.byId("al").appendChild(w.domNode);
39 });
40
41 //
42 // Test passing a dom node as the first argument to createWidget()
43 //
44
45 </script>
46 </head>
47 <body>
48 <h1>Test createWidget()</h1>
49 <div id="vanilla"></div>
50
51 <h1>Test createWidget()/auto-loading</h1>
52 <p>
53 This tests the ability for createWidget() to automatically load the code for a widget,
54 even though the user hasn't done a dojo.require() for the widget.
55 </p>
56 <div id="al"></div>
57 </body>
58</html>
59