2

使用preventDefault()on akeydown适用于除某些网站(如 Gmail)上的 tab键之外的所有键。

  1. 为什么会这样?tab 键有什么特别之处——不应该和其他键一样对待keypress吗?

  2. 如何阻止 Tab 键循环浏览 Gmail 中的元素?

这是我目前正在使用的 Greasemonkey(带有 jQ​​uery 的 JS)代码:

$("body.editable.LW-avf").keydown(function(event){
    if(event.which == 9){
        event.preventDefault();
    }
});

tab(例如)以外的任何东西都a有效 -keypress停止了。如何捕获制表键?

4

1 回答 1

0

Gmail 可能已经在使用preventDefault重新定义事件处理程序,因为它没有使用tabindex. 在这种情况下,您需要覆盖以下定义preventDefault

Event.prototype.preventDefault = function(){}
于 2013-04-06T03:38:08.587 回答