如果在IE6上以编程方式创建Dijit小部件,则不会初始化它们

时间:2009-07-07 00:22:51

标签: javascript internet-explorer dojo

我使用经典的JavaScript方式(以编程方式)使用dojo-1.3.1实例化dijit小部件,它在Firefox中正常工作,但在IE中不会初始化小部件并且不会引发任何错误。

我的源代码是:

<html>
<head>
  <title>...</title>
  <script type="text/javascript" src="lib/dojo/dojo/dojo.js" djconfig="parseOnLoad:true, isDebug: true"></script>
  <script>
  dojo.require("dijit.form.DropDownButton");
  dojo.require("dijit.Dialog");
  dojo.require("dijit.form.Button");
  dojo.addOnLoad(function(){
     var addFormTooltip = new dijit.TooltipDialog({
         title: "Add a new person",
         execute: function(arguments){
             console.debug("Add \"New Person\" Form Tooltip Execute."); 
         }
     }, "add_form_tooltip");

     var tooltipOkButton = new dijit.form.Button({
         name: "ok",
         type: "submit"
     }, "tooltip_ok_button");

     var addDropDownButton = new dijit.form.DropDownButton({
          title: "Add new person",
          label: "Add",
          dropDown: addFormTooltip // refers to addFormTooltip variable
     },"add_button");
  });

 </script>
</head>
<body>
  <div id="add_button"></div>
  <div style="display:none">
     <div id="add_form_tooltip">
      <!-- Tooltip content -->
      <span>Hello world</span>
      <button id="tooltip_ok_button">OK</button>
     </div>
  </div>
</body>
</html>

我错过了什么吗?

我尝试了描述性方法,它适用于两个浏览器,因此它必须与此代码或我认为的IE浏览器有关。

1 个答案:

答案 0 :(得分:0)

我不知道是不是问题但是,如果要以编程方式创建它们,则应该调用widgets启动方法。我没有看到你这样做。