由于某种原因,我无法捕获"SHIFT+TAB“组合。我使用的是最新的jQuery。
如果我使用其他ajax/javascript等,结果也是一样的。
这里有一个简单的例子,根据我目前的理解,它应该是有效的。
event.which或event.KeyCode总是“未定义的”只有shiftKey存在于涉及"SHIFT+TAB“或向后键盘遍历的场景中,这传统上是基于windows的应用程序/web或其他方式所固有的。
function ShiftTab()
{
debugger;
if(event.KeyCode == 9 && event.shiftKey) // neither this line nor the following work
// if (event.which == 9 && event.shiftKey) // shift + tab, traverse backwards, using keyboard
{
return true;
}
else
{
return false;
}
}
这似乎是另一个与Tab键顺序相关的项目,它不再像传统上在基于Microsoft.Net WinForm/WebForm的应用程序中那样工作。
发布于 2011-04-19 03:25:03
如果您使用的是jQuery,这应该是代码的工作方式。确保keyCode
为小写。此外,jQuery将keyCode
规范化为which
$(document).keyup(function (e) {
if (e.which === 9 && e.shiftKey) {
ShiftTab();
}
});
如果你对简明的JavaScript感兴趣:
$(document).keyup(function (e) {
e.which === 9 && e.shiftKey && ShiftTab();
});
jQuery 1.7+ on
语法:
$(document).on('keyup', function (e) {
e.which === 9 && e.shiftKey && ShiftTab();
});
发布于 2015-08-01 17:59:32
在按键事件中使用相同的代码。该选项卡可在keypress和keyup之间更改元素。在这里,我们得到event.key = tab和event.shiftKey = true。
https://stackoverflow.com/questions/5707758
复制相似问题