如何从普通的旧HTML链接中激活一个事件(我想切换卡片视图)?
如果我在控件部分按ID引用链接,则我尝试触摸的任何事件(点击,点按)都没有。
谢谢!
答案 0 :(得分:2)
渲染链接后,您可以通过以下方式添加事件侦听器:
Ext.get('[link id here]').on('click', function(){...}, this);
<强>更新强>
如果您想在用户点击超链接时触发事件,您只需添加this.fireEvent('[name of event here]');
但请注意此函数中的this
关键字含义,这样您就可以添加侦听器适当地......它有意义吗?
答案 1 :(得分:1)
向包含该链接的面板添加单击侦听器。在示例中,标签具有“链接”类。您可以用自己的类/ id替换它,因为它是在jQuery中完成的。
listeners: {
scope: this,
itemtap: this.onItemtapAction,
click: {
element: 'el',
fn: function (e) {
if (e.getTarget('a.link')) {
// Switch cards here
}
}
}
答案 2 :(得分:0)
我使用简单的Java Script为链接添加了一个监听器。
首先,我为容器组件创建了一个“activate”侦听器:
...
listeners: {
activate: function (newActiveItem, container, oldActiveItem, eOpts) {
this.onActivate(newActiveItem, container, oldActiveItem, eOpts);
}
}
...
这是我的功能:
onActivate: function (newActiveItem, mainNavView, oldActiveItem, eOpts) {
var me = this;
document.getElementById('logOutLink').addEventListener("click",
function(){
me.onLogOut();
}, false);
},
onLogOut:function(){
alert('log out');
}