设置Dojo版本1.5.0

时间:2011-02-14 17:52:48

标签: dojo

我已经下载了这个版本,我试图从文档中运行一个示例。 在扩展Dojo下载后,我的dojo目录是:

js/dojo-release-1.5.0/dijit
js/dojo-release-1.5.0/dojo
js/dojo-release-1.5.0/dojox

按钮显示,但隐藏按钮不会隐藏div。 我是否需要添加其他Dojo库以及对dojo.js的引用?

<script type="text/javascript" language="JavaScript"  src="/js/dojo-release-1.5.0/dojo/dojo.js"></script>

<script type="text/javascript">

dojo.require("dijit.form.Button");

dojo.addOnLoad(function() {
    var node = dojo.byId("findMe");
    dojo.connect(dijit.byId("buttonOne"), "onClick", function() {
        dojo.fadeOut({
            node: node,
            duration: 300
        }).play();
    });
    dojo.connect(dijit.byId("buttonTwo"), "onClick", function() {
        dojo.fadeIn({
            node: node,
            duration: 300
        }).play();
    })
});

HTML:

<button dojoType="dijit.form.Button" id="buttonOne">
Hide Me!
</button>
<button dojoType="dijit.form.Button" id="buttonTwo">
Show Me!
</button>
<div id="findMe">
Hiya!
</div>

2 个答案:

答案 0 :(得分:1)

您可能会遗漏一些事情。正如丹尼尔所说,将parseOnLoad=true添加为djConfig参数会有所帮助。或者,您可以在dojo.js脚本标记之前添加djConfig参数作为全局JS变量,即

<script>
  var djConfig = {
    parseOnLoad: true
  }
</script>

最后一种方法是自己手动调用解析器。为此,请将JS修改为:

dojo.require("dijit.form.Button");
// You need to manually require the parser if you're going to call it yourself
dojo.require("dojo.parser");

dojo.addOnLoad(function() {
    var node = dojo.byId("findMe");
    dojo.connect(dijit.byId("buttonOne"), "onClick", function() {
        dojo.fadeOut({
            node: node,
            duration: 300
        }).play();
    });
    dojo.connect(dijit.byId("buttonTwo"), "onClick", function() {
        dojo.fadeIn({
            node: node,
            duration: 300
        }).play();
    })

    // New line, parse the doc
    dojo.parser.parse();
});

除了解析之外,您可能还需要添加一个主题(如果您已经完成此操作,则未提及)。最简单的方法是将类名添加到body标签并导入css。

    ...
    <link rel="stylesheet" type="text/css" href="/js/dojo-release-1.5.0/dijit/themes/claro/claro.css">
</head>
<body class="claro">
  ...
</body>

http://telliott.net/dojoExamples/dojo-buttonHelloWorld.html包含了一个适合您的例子,随时可以使用婴儿床。

阅读http://dojotoolkit.org/reference-guide/djConfig.html#djconfighttp://dojotoolkit.org/reference-guide/dijit/info.html#dijit-info也可能是一个好主意。

HTH。

汤姆

答案 1 :(得分:0)

在将dojo.js添加到页面时尝试添加djConfig =“parseOnLoad:true”。

前:

<script type="text/javascript" language="JavaScript"  src="/js/dojo-release-1.5.0/dojo/dojo.js" djConfig="parseOnLoad:true"></script>

//丹尼尔