0

如果有人单击文本框的外侧(.focusout 或 .blur),我希望文本框消失,但如果按下 Esc(键 27),我也希望能够执行相同的功能。我不确定如何在不破坏整个脚本的情况下让两者都被识别。

4

3 回答 3

2

您可以将两个事件绑定到同一个函数

$(selector).bind("blur keyup",function(e){...})

然后它只是判断逻辑,看看它是否是一个被按下的键或诸如此类的东西。

于 2011-08-17T17:18:06.660 回答
1

像这样的东西怎么样:

$('#selector').bind('blur keyup', function(e) {
    if(e.keyCode == 27 || e.keyCode == undefined)
        $(this).hide();
});
于 2011-08-17T17:23:40.587 回答
0

我将创建一个绑定到文本框的自定义事件:

<script>
$(document).ready(function(){
   $("#id").bind("blur keyup myCustomEvent"),function(event){
    //whatever you need
    // you can trigger this logic again via .trigger("myCustomEvent");
    });

});
</script>
于 2011-08-17T17:20:49.987 回答