如何实现新的键事件来打开FF中“select”元素的下拉列表而不是默认的Alt + down

时间:2015-10-28 07:10:37

标签: jquery html browser accessibility

我正在创建辅助功能网站,用户可以使用键盘访问网站上的控件。

可以使用输入/空格键来访问HTML的select元素以下拉Chrome中的下拉菜单,但在FF中可以使用不同的方式访问。我们希望使用Alt +向上/ Alt +向下关闭并分别打开下拉列表。

我想在FF中更改此行为,并希望在浏览器中保持一致。因此,我想在Chrome中使用Enter / Space键进行控制访问。

$('select').bind('keypress',function(event){
    if('MozBoxSizing' in document.body.style){
        if(event.which == 13 || event.which == 32){
            console.log("key pressed:" + event.which);
            $(this).trigger(click);
        }
    }
});

这是一个错误:

"key pressed:13" Util.js:38
ReferenceError: click is not defined Util.js:39
"key pressed:32" Util.js:38
ReferenceError: click is not defined

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:0)

无法在fireFox中更改SELECT的默认行为

你可以试试Jquery UI ComboBox

可让您完全控制行为,并根据需要进行更改。

https://jqueryui.com/autocomplete/#combobox

或者你可以试试Select2

https://select2.github.io/

如果你需要一些自定义帮助,你可以在这里评论我将解释如何自定义这两个控件