Dojo解析器更改按钮id

Dojo解析器更改按钮id,dojo,Dojo,我直接从教程中获得了以下代码: <!DOCTYPE HTML> <head> <link rel="stylesheet" href="js/dijit/themes/claro/claro.css" /> <script src="js/dojo/dojo.js" data-dojo-config="async: 1, parseOnLoad: 1"></script> <script>

我直接从教程中获得了以下代码:

<!DOCTYPE HTML>
  <head>
    <link rel="stylesheet" href="js/dijit/themes/claro/claro.css" />
    <script src="js/dojo/dojo.js" data-dojo-config="async: 1, parseOnLoad: 1"></script>
    <script>
      require(["dojo/_base/fx", "dojo/on", "dojo/dom", "dojo/parser", "dojo/domReady!"], function(fx, on, dom, parser) 
      {
        var fadeOutButton = dom.byId("fadeOutButton"),
            fadeInButton = dom.byId("fadeInButton"),
            fadeTarget = dom.byId("fadeTarget");

        on(fadeOutButton, "click", function(evt)
        {
          fx.fadeOut({ node: fadeTarget }).play();
        });

        on(fadeInButton, "click", function(evt)
        {
          fx.fadeIn({ node: fadeTarget }).play();
        });

      });           
    </script>       
  </head>
  <body class="claro">
    <button data-dojo-type="dijit/form/Button" type="button" id="fadeOutButton">Fade block out</button>
    <button data-dojo-type="dijit/form/Button" type="button" id="fadeInButton">Fade block in</button>

    <div id="fadeTarget" style="background: red; height: 256px">
      A red block
    </div>  
  </body>
</html>

require([“dojo/_base/fx”,“dojo/on”,“dojo/dom”,“dojo/parser”,“dojo/domReady!”),函数(fx,on,dom,parser)
{
var fadeOutButton=dom.byId(“fadeOutButton”),
fadeInButton=dom.byId(“fadeInButton”),
fadeTarget=dom.byId(“fadeTarget”);
打开(淡出按钮,“单击”,功能(evt)
{
fadeOut({node:fadeTarget}).play();
});
打开(fadeInButton,“单击”,功能(evt)
{
fadeIn({node:fadeTarget}).play();
});
});           
淡入阻挡
淡入块
红砖

我的目标是让按钮具有Dojo风格。就我所见,这是由解析器完成的。问题是解析器将更改按钮元素的id,因此不会触发事件。如果我从
require
中删除
dojo/parser
,或者将
parseOnLoad
更改为0,则按钮可以工作,但它们不是样式。在上面的代码中,按钮是样式化的,但不起作用。两者都有可能吗?

我想我已经解决了——我必须使用
registry.byId
而不是
dom.byId

registry.byId返回小部件对象。byId返回dom对象。因此,使用registry.byId返回的对象时需要小心。如果需要呈现小部件的DOM节点,则需要访问小部件对象的“domNode”属性。