跳至内容
菜单
此问题已终结
A widget can intercept only events that occur inside its form,
but how can it intercept an event that has occurred outside of it?
As in my case, when i click on the menu item...


Here is my code
ListRenderer.include({
...
_onContextMenu: function(event) { // Display custom context menu
event.preventDefault();
var target = $(event.currentTarget)[0];
if (target && target.tagName === 'TR' && target.className === 'o_data_row') {
var id = $(event.currentTarget).data('id');
if (id) {
$('.custom-cm')[0].style.display = 'block';
}
}
},

...

});
$(function(){

$('body').append( // Adding a simple menu to the body of document 
'<div class="custom-cm">' +
'<div class="custom-cm__item">Demo #1</div>' +
'<div class="custom-cm__item">Demo #2</div>' +
'<div class="custom-cm__item">Demo #3</div>' +
'<div class="custom-cm__divider"></div>' +
'<div class="custom-cm__item">Demo #4</div>' +
'</div>'
);

window.addEventListener("contextmenu", () => { // Disable browser contextmenu
event.preventDefault();
});

window.addEventListener("click", () => { // If the right button is pressed, hide the custom context menu
$(".custom-cm")[0].style.display = 'none';
}
});


形象
丢弃
相关帖文 回复 查看 活动
0
6月 24
1459
0
6月 17
9363
2
2月 17
5372
0
10月 24
1214
1
7月 24
2246