我尝试使用Dojo框架,但我不能在href或其他元素上使用处理程序(事件)。谢谢
HTML:
<a class="one" href="#">text_one</a>
<a id="two" href="#">text_two</a>
JS:
require(
["dojo/query", "dojo/_base/connect", "dojo/on", "weather/handlers", "dojo/domReady!"],
function(query, connect, on){
var test = new weather.handlers;
test.getCities();
query(".one").forEach(function(node, index, nodelist){
on(node, "onClick", function(evt){
console.log("one clicked!");
})
});
query('#two').on('onClick',function(){
console.log('two clicked!');
})
}
);
2条答案
按热度按时间vawmfj5a1#
要侦听的DOM事件的名称是
click
,而不是onClick
。使用dojo/on
监听DOM元素上的onClick
将不会有任何作用。如果你要为多个同质元素挂接一个事件处理程序,你可能还想阅读Events with Dojo教程中的事件委托。
brtdzjyr2#
dom事件
onClick
在 Dojo 1.7 之前使用,其中dojo.connect
用于注册事件侦听器。例如:但是从 Dojo 1.7
onwards
开始,引入了一个新的轻量级dojo/on模块,它使用以下语法:删除了
on
前缀,onclick
变为click