0

是否可以在 Javascript 中重新定义事件?

示例:如果F12按键被按下并且事件发生,我需要浏览器将其作为键盘的键Tab来处理。Space

4

1 回答 1

3

在没有测试以查看这是否有效的情况下,这与我尝试的方式一致。

本质上是监听一个keydown 事件,如果按下的键是F12,触发另一个keydownevent模拟tab

$(document).keydown(function(event) {
  if(event.which == 123) { // Chrome code for F12 
    event.preventDefault(); // Stop the default actions for this event.
    var press = jQuery.Event("keydown"); // Create a new keypress event.
    press.ctrlKey = false; // No control key down
    press.which = 9; // Chrome code for tab
    $(document).trigger(press); // Fire the keypress event for tab
  }
});

我不确定您是否可以在文档keydown上触发事件,这也只是一个猜测。

于 2012-08-07T11:56:05.257 回答