我使用材质中的菜单。我想做一个下拉菜单,当用户右键单击tr,但菜单弹出在表头位置。(X坐标工作正常,但Y坐标卡在表头的位置)
$(document).on('contextmenu','#table2 tr',function(e){
e.preventDefault();
let parentOffset = $(this).offset();
menu.open = false;
console.log($(this).attr('id'));
menu.setAbsolutePosition(e.pageX - parentOffset.left, e.pageY - parentOffset.top);
menu.open = true;
});
如何固定坐标?
$(document).on('contextmenu','#table2 tr',function(e){
e.preventDefault();
menu.open = false;
console.log($(this).attr('id'));
menu.setAbsolutePosition(e.clientX, e.clientY);
menu.open = true;
});
问题解决了,因为setAbsolutePosition
从父位置设置位置(我不知道)。我把菜单元素放在body标签后面,然后使用menu.setAbsolutePosition(e.clientX, e.clientY);
,现在一切都正常了