我有一个表单,用户可以在其中选项卡并跳转到不同的元素。当它到达一个特殊的锚标签时我就停止了标签。
这是在firefox中运行的代码
$('.next-tab').keypress(function(e){
var code = (e.keyCode ? e.keyCode : e.which);
console.log(code);
if (code == 0 || code == 9){
console.log("keypress")
e.preventDefault();
e.stopPropagation();
}
});
但是这段代码在chrome中不起作用,我不知道为什么,它甚至没有进入keypress方法。 所以我使用此代码进行chrome
$('.next-tab').blur(function(e) {
var code = (e.keyCode ? e.keyCode : e.which);
console.log(code);
if (code == 0 || code == 9){
console.log("blur")
e.preventDefault();
e.stopPropagation();
}
});
它进入模糊方法传递条件但不做任何事情,用户可以轻松移动到下一个元素。
答案 0 :(得分:2)
对于chrome支持,看起来您需要使用keydown事件:
$('.next-tab').keydown(function (e) {
var code = (e.keyCode ? e.keyCode : e.which);
console.log(code);
if (code == 0 || code == 9) {
console.log("keydown")
e.preventDefault();
e.stopPropagation();
}
});