jQuery事件:keypress不适用于Firefox或IE,而keyup不适用于IE

时间:2018-12-12 01:40:50

标签: javascript jquery internet-explorer firefox events

我正在使用一些键盘快捷键来进行“下一个/后退”导航(箭头←→),并使用另一个键盘快捷键来实现“播放/暂停”音频(\键)。但是,第一个不适用于IE,第二个不适用于Firefox或Internet Explorer。我不确定要在所有浏览器中使用的全局函数是什么,或者不确定要在脚本的哪个部分进行编辑。

js 1(不适用于Internet Explorer):

jQuery(function( $ ) {
var keymap = {};

keymap[ 37 ] = "#prev";
keymap[ 39 ] = "#next";

$( document ).on( "keyup", function(event) {
var href,
    selector = keymap[ event.which ];
if ( selector ) {
    href = $( selector ).attr( "href" );
    if ( href ) {
        window.location = href;
    }
}
});
});

js 2(不适用于Firefox和IE):

$(document).keypress(function(e) {

                var video = document.getElementById("myAudio");
                // \
                if ((event.which == 92) || (event.keyCode==92)) {
                    if (video.paused)
                        video.play();
                    else
                        video.pause();
                }
            });

0 个答案:

没有答案