jquery自定义键码触发器无法正常工作

时间:2011-10-12 20:32:02

标签: javascript jquery triggers keypress keystroke

我想在所选元素上发送按键,如下所示:

$(":input").click(function(){
    $(this).trigger("keydown", [{
        preventDefault:function(){},
        keyCode:9,
        shiftKey: true
    }]);
});

//wants to send Shift+Tab keystroke on input click

演示:http://jsfiddle.net/NYwCT/

2 个答案:

答案 0 :(得分:5)

您无法发送击键。它目前触发任何绑定的函数,但不在浏览器级别执行相关的操作(发送ALT + F4的脚本怎么样?)。

如果您想在点击之前关注输入,可以使用.prev()(上一个兄弟):http://jsfiddle.net/NYwCT/1/

$(":input").click(function(){
    $(this).prev().focus();
});

答案 1 :(得分:1)

这不会触发实际的事件

var press = jQuery.Event("keypress");
press.shiftKey = true;
press.keyCode = 9;
$(this).trigger(press);

您也可以尝试使用此插件:fn.sendkeysjwerty