如何在javascript中检测右键+剪切/删除/粘贴/撤消?

时间:2013-07-22 20:24:45

标签: javascript jquery html menu right-click

在我的JavaScript / jQuery代码中,我有一个文本字段,当文本使用keyup事件更改时,我会运行一个事件。但是目前我只考虑使用键盘进行的更改。

我是否有办法检测文本字段文本何时更改,因为用户右键单击并单击剪切或删除或粘贴或撤消?

注意:这需要在IE9中运行,最好是Firefox和Chrome,但肯定需要在IE9中运行。

由于

2 个答案:

答案 0 :(得分:5)

jsFiddle Demo

使用jquery将输入事件绑定到元素,如下所示:

$('#myInput').bind('input',function(){
  //use this for the input element when input is made
  var inputValue = this.value;//for example
 });

答案 1 :(得分:0)

首先,这不是真正的正确方法。但是如果你对输入的mouseout事件作出反应,你很可能会让它按照你想要的方式行事。

$('#input').mouseout(function(){
  if($('#input').is(":focus"))
    console.log("Right-click");
});

虽然要注意这可能在textareas上不起作用,因为它们往往更大,并且在单击上下文菜单时鼠标可能不在它之外。

注意:除了对所有交互作出反应的@Travis J之外,这将(可能)仅触发右键单击事件(和常规鼠标输出)。