Javascript 是否可以在右键单击的浏览器上下文菜单上检测到左键单击?
一个对话框、一个菜单或其他HTML元素在点击时弹出一个链接,这是一种相当常见的模式。例如,如果单击堆栈溢出编辑框上方的橙色问号,它会为“链接”、“图像”等添加一组链接。然后,再次单击问号时,菜单将消失 我有一个类似的设置,只是我希望当用户点击菜单以外的任何地方时,菜单消失。这并不难($(document.body)。单击(handleclickwhere))。然而,困难的是以下情况:Javascript 是否可以在右键单击的浏览器上下文菜单上检测到左键单击?,javascript,mouseevent,contextmenu,Javascript,Mouseevent,Contextmenu,一个对话框、一个菜单或其他HTML元素在点击时弹出一个链接,这是一种相当常见的模式。例如,如果单击堆栈溢出编辑框上方的橙色问号,它会为“链接”、“图像”等添加一组链接。然后,再次单击问号时,菜单将消失 我有一个类似的设置,只是我希望当用户点击菜单以外的任何地方时,菜单消失。这并不难($(document.body)。单击(handleclickwhere))。然而,困难的是以下情况: 用户单击以打开菜单 用户右键单击菜单中的一个链接(显示浏览器上下文菜单) 用户在浏览器的上下文菜单上的“在新选项
但这假定浏览器默认设置为“切换到新选项卡”。有些用户可能会选择在后台打开新选项卡的设置,这样主窗口就不会失去焦点,而且这种方法也不会起作用。(嘿,如果我还在看菜单,谁想关闭它?这是个好主意,但这种方法有一个小问题:至少在我的浏览器中,当你选择“在新选项卡中打开”时,它不会立即切换到该选项卡。因此,当用户单击新选项卡时,菜单会自动消失,直到它出现为止。如果这是最好的结果,那没关系,但如果有任何方法可以避免,那就太好了。最接近的方法是检测上下文菜单事件,而不是被点击的项目。这就是我害怕的;不过,感谢您的关注建议:)