在dojo.addOnload方法或DeclaratiteVly中注册事件侦听器
在dojo.addOnload方法中使用注册事件侦听器与声明式注册它们之间的区别是什么 例如,我有一个按钮,如图所示在dojo.addOnload方法或DeclaratiteVly中注册事件侦听器,dojo,Dojo,在dojo.addOnload方法中使用注册事件侦听器与声明式注册它们之间的区别是什么 例如,我有一个按钮,如图所示 <button dojoType="dijit.form.Button" id="buttonTwo"> Show Me! </button> 第二种方法: dojo.addOnLoad(function() { var widget = dijit.byId("buttonTwo"); dojo.connect(
<button dojoType="dijit.form.Button" id="buttonTwo">
Show Me!
</button>
第二种方法:
dojo.addOnLoad(function() {
var widget = dijit.byId("buttonTwo");
dojo.connect(widget, "onClick", function(){
alert('ddddd');
});
<button dojoType="dijit.form.Button" id="buttonTwo" onClick="callMe()">
Show Me!
</button>
向我展示!
没有实际的区别,这是您喜欢如何组织代码的问题
话虽如此,我相信您应该避免在Dojo中混合使用声明性和编程性方法,以获得更一致的代码基础。这意味着,如果您选择了编程路线,您应该这样做,而不是第一种方法:
dojo.addOnLoad(function() {
new dijit.form.Button(
{
label: "Show Me!",
onClick: function() {
alert('ddddd');
}
},
'buttonTwo'
);
});
...
<button id="buttonTwo"></button>
dojo.addOnLoad(函数(){
新的dijit.form.Button(
{
标签:“给我看!”,
onClick:function(){
警报(‘ddd’);
}
},
“buttonTwo”
);
});
...
此示例是一个完整的编程示例。根据您的偏好,您可以使用它(而不是第一种方法),也可以使用第二种方法。您可以阅读更多关于编程式和声明式Dojo方法差异的内容