preventDefault无法使用tab(9)keyCode

时间:2014-01-28 09:54:25

标签: javascript jquery backbone.js javascript-events

我为enter和tab使用了按键事件。但出于某种原因,代码只能用enter运行。通过按Tab键,它只执行默认的Tab键操作并忽略代码。请帮忙。

onEnterAddWord: function(ev) {
        var kc = ev.which || ev.keyCode;
        if (kc === 13 || kc === 9) {
            ev.preventDefault();
            this.$el.find('.add-word-input input').trigger('blur');
            this.$el.find('.viewbox').trigger('click');
            console.log('check');
        }
    },

2 个答案:

答案 0 :(得分:1)

尝试 keydown 而不是 keypress

修饰符和非打印键不会触发按键事件。

答案 1 :(得分:0)

如何添加ev.stopImmediatePropagation();来阻止其他事件监听器触发?