防止iE11中的默认"F1"事件

AJA*_*ATI 1 html javascript jquery internet-explorer dom

当用户按下F1键时,我打算显示我们的应用程序帮助并禁止默认操作.我尝试了不同的选项,不显示IE的帮助弹出窗口.这是我的代码:

document.addEventListener('keydown', function (e) {
            if (e.key === 'F1' || e.keyCode == 112) {

                   e.cancelBubble = true;
                    e.cancelable = true;
                    e.stopPropagation();
                    e.preventDefault();
                    e.returnValue = false;

                //my help menu code goes here
            }
});
Run Code Online (Sandbox Code Playgroud)

请让我知道如何显示我的应用程序的帮助页面而不是IE帮助.我使用的是IE11版本.

ela*_*con 5

您可以订阅该window.onhelp活动:

window.onhelp =function() { 
    alert();
    return false;
}
Run Code Online (Sandbox Code Playgroud)


小智 5

试试这个

<script>
        $(document).ready(function () {

            removedefaulthelp();
            function removedefaulthelp()
            {
                window.onhelp = function () {
                    return false;
                    alert();
                }
            }
            document.addEventListener('keydown', function (e) {
                if (e.key === 'F1' || e.keyCode == 112) {
                    removedefaulthelp();
                    e.cancelBubble = true;
                    e.cancelable = true;
                    e.stopPropagation();
                    e.preventDefault();
                    e.returnValue = false;
                    //my help menu code goes here
                }
            });
}
</script>
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅