dojo多个onclicks具有不同的函数调用

时间:2016-02-02 04:24:37

标签: javascript-events dojo onclick js-amd

将Dojo Non-AMD JS转换为AMD时,发现事件有困难  处理 我们有很多按钮,span& div具有多个动作的不同事件。 所以想知道我们应该使用on还是connect&如何将它用于多个元素事件?

 <span onclick="a.abShow(); t.T1(); p.show();">

 <span onclick="a.test(); setTimeout(a.test1(),100)">
 <td onclick="ab.test7(); t.test();">

 Button('gallery', 'e.Refresh();a.test();','');

 ........

1 个答案:

答案 0 :(得分:0)

您可以使用dojo/on模块轻松地对事件执行多项操作:

  

dojo / on是DOM节点和其他事件发送对象的通用事件处理程序模块,提供规范化事件侦听和事件分派功能。

https://dojotoolkit.org/reference-guide/1.10/dojo/on.html#dojo-on

&#13;
&#13;
require(['dojo/on', 'dojo/domReady!'], function (on) {

  on(dojo.byId('my-span'), 'click', function (e) {
    alert('I throw an alert');
    alert('And do it again');
    alert('And again');
  });

  on(dojo.byId('my-other-span'), 'click', function (e) {
    alert('I throw an alert');
    alert('And do it again');
    alert('And again');
  });

});
&#13;
<script type="application/javascript" src="//ajax.googleapis.com/ajax/libs/dojo/1.10.4/dojo/dojo.js"></script>
<span id="my-span">Click me!</span>
<span id="my-other-span">Click me too!</span>
&#13;
&#13;
&#13;