小提琴:http://jsfiddle.net/TKWzH/8/

“测试弹出”是该项目的当前功能。我希望脚本能够起到“ Test Pop 2”的作用。但是,实际的脚本在单击执行时具有比关闭弹出窗口更多的功能。

有没有一种方法可以将on enter和on mouseup命令合并为一行?

$("#popup2 label").on('keyup || mouseup', function (event) {
    $('#popup2').css('display', 'none');
});


我正在寻找类似的东西,但是我希望键只对Enterkey键起作用。如所写,它发生在任何键上。

我尝试执行此操作的原因是因为我想使表单键盘可访问。从小提琴中可以看出,如果您使用键盘浏览“测试弹出”,则必须在选择单选按钮后重新打开对话框。

最佳答案

只需使用一个空格。

$("#popup2 label").on('keyup mouseup', function (e) {
    if (e.type == 'keyup' && e.which != 13) return;
    $('#popup2').css('display', 'none');
});


docs


 .on( events [, selector] [, data], handler(eventObject) )


events一个或多个用空格分隔的事件类型和可选的名称空间,例如“ click”或“ keydown.myPlugin”。

10-07 17:25