gpt4 book ai didi

javascript - ExtJs - 无法对 DOM 上下文菜单使用 fireEvent

转载 作者:行者123 更新时间:2023-11-28 01:27:46 25 4
gpt4 key购买 nike

我一直在尝试在 ExtJs 中的选项卡面板标题上创建上下文菜单,但遇到了一些问题。

最终,我希望它出现在右键单击和左键单击上;目前,右键单击时它看起来很好,但我也无法在左键单击上发生右键单击事件。

我设置了一个监听器,如下所示:

tabPanel.items.items[len].getEl().on('contextmenu', function(event, item) { 
//the items.items is intentional
event.stopEvent();
Ext.ComponentQuery.query('#contextMenu')[0].showAt(event.getXY());
}

并且我还尝试通过调用创建左键单击的上下文菜单:

beforeactivate: function() {
tabPanel = Ext.ComponentQuery.query('#tabPanelChanged tabbar')[0];
len = tabPanel.items.items.length -1;
button = tabPanel.items.items[len].getEl();

button.fireEvent('contextmenu', button);
//button.dom.oncontextmenu is null, but so is onclick
return false; //Returning false stops the tab being activated
}

注意:这些都在 Controller 中

非常感谢任何帮助!

最佳答案

tabPanel.items.items[len].getEl().on('contextmenu', function(event, item) { 
//the items.items is intentional
event.stopEvent();
Ext.ComponentQuery.query('#contextMenu')[0].showAt(event.getXY());
});

(...)

tabPanel.items.items[len].getEl().on('click', function(event, item) {
//the items.items is intentional
event.stopEvent();
Ext.ComponentQuery.query('#contextMenu')[0].showAt(event.getXY());
});

关于javascript - ExtJs - 无法对 DOM 上下文菜单使用 fireEvent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22486099/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com