我有一把 fiddle here .
仍在尝试弄清楚 Ext JS。单击链接时如何触发单击事件?应该是世界上最简单的事情吧?显然,单击 a
时应该会出现警报,但单击 span
时不会出现该警报。另外,如果可能的话,我想将附加监听器的代码块移动到 ViewController 中。
var container = Ext.create('Ext.Container', {
renderTo: Ext.getBody(),
html: '<div><a class="test">test....</a><br><br><br><span>some text</span></div>',
listeners: {
click: function(){
Ext.Msg.alert('I have been clicked!')
}
}
});
container.down('a.test').on('click', function(){
this.fireEvent('click', container);
}, container);
我试图遵循 instructions here在“监听 DOM 事件”部分。
此外,一旦我的处理程序函数返回,我不希望任何其他处理程序可能会触发..所以我猜相当于 jQuery preventDefault
。
最佳答案
您也可以简单地使用监听器
,例如:
listeners: {
click: {
element: 'el',
delegate: 'a',
fn: function() {
Ext.Msg.alert('I have been clicked!')
}
}
}
基于您的工作示例:https://fiddle.sencha.com/#fiddle/v72
(委托(delegate)
可以是任何选择器)
关于javascript - 为链接点击创建简单的监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33028914/