【发布时间】:2012-10-01 12:32:56
【问题描述】:
在keydown 上使用preventDefault() 适用于所有键除了某些网站(如 Gmail)上的 Tab 键。
-
为什么会这样? tab 键有什么特别之处——不应该和其他
keypress一样对待吗? -
如何阻止 Tab 键循环浏览 Gmail 中的元素?
这是我目前正在使用的 Greasemonkey (JS with jQuery) 代码:
$("body.editable.LW-avf").keydown(function(event){
if(event.which == 9){
event.preventDefault();
}
});
除了 tab(例如 a)以外的任何东西都可以工作 - keypress 已停止。如何捕获 Tab 键?
【问题讨论】:
-
尝试了各种方法,除了可编辑的
<body>之外,几乎可以在任何地方阻止该选项卡。您是否考虑过更换电子邮件客户端? (^_^) 为 Google 网站编写脚本是一件苦差事。祝你好运! -
PS:Tab 键在 Gmail 上的设计方式不同。 Gmail JS 故意对标签做一些事情,你的技术适用于普通网站。 (弄清楚 Gmail 是如何连接到标签的,事实证明并不简单。)
标签: javascript jquery greasemonkey jquery-events preventdefault