我想要捕获TAB键,取消默认操作并调用我自己的javascript函数。
发布于 2013-03-14 21:20:38
jQuery 1.9中的工作示例:
$('body').on('keydown', '#textbox', function(e) {
if (e.which == 9) {
e.preventDefault();
// do your code
}
});
发布于 2009-08-21 22:23:23
$('#textbox').live('keypress', function(e) {
if (e.keyCode === 9) {
e.preventDefault();
// do work
}
});
发布于 2014-07-24 01:24:57
在tab上使用向下键的一个重要部分是知道tab总是会尝试做一些已经做过的事情,不要忘记在结束时“返回false”。
这就是我所做的。我有一个在.blur上运行的函数和一个在窗体焦点所在位置切换的函数。基本上,它在表单的末尾添加一个输入,并在运行模糊计算的同时到达那里。
$(this).children('input[type=text]').blur(timeEntered).keydown(function (e) {
var code = e.keyCode || e.which;
if (code == "9") {
window.tabPressed = true;
// Here is the external function you want to call, let your external
// function handle all your custom code, then return false to
// prevent the tab button from doing whatever it would naturally do.
focusShift($(this));
return false;
} else {
window.tabPressed = false;
}
// This is the code i want to execute, it might be different than yours
function focusShift(trigger) {
var focalPoint = false;
if (tabPressed == true) {
console.log($(trigger).parents("td").next("td"));
focalPoint = $(trigger).parents("td").next("td");
}
if (focalPoint) {
$(focalPoint).trigger("click");
}
}
});
https://stackoverflow.com/questions/1314450
复制相似问题