如何在具有contentEditable = true的div上正确捕获右键单击事件?

时间:2014-11-06 18:51:35

标签: javascript jquery dictionary focus markdown

我有contentEditable=true的div。它支持**word**_word_的降价格式。

blur上的div事件中,降价转换为html 在focus上的div事件中,html将转换为markdown。

这没关系。但是当浏览器找到一个未知单词(红色下划线)并且我想通过右键单击来修复它以查看建议的单词时,div会获得焦点并且单词没有加下划线。

请问您有什么想法吗? (对不起我的英语)

1 个答案:

答案 0 :(得分:0)

使用oncontextmenu - 因为右键单击也可以通过CTRL / CMD +点击等来实现。

$('#content').on('contextmenu', function (event) {
  event.preventDefault();

  console.log('context menu opened');
})

编辑根据您的评论反馈进行调整:

$('#content').on('mousedown', function (event) {

    if ( event.which == 3 ) {
      console.log('Right mouse button pressed');
    }
})