繁体   English   中英

为什么我的 function 没有覆盖 Microsoft Edge 中的 Alt+D 按键事件?

[英]Why doesn't my function override the Alt+D keydown event in Microsoft Edge?

我无法使用 JavaScript 覆盖 Microsoft Edge 中的Alt + D按键事件; 不过,它适用于所有其他浏览器。 它正在导航到地址栏。

这是我的 on keydown 事件

$(document).keydown(function (e) { 
    if (e.altKey && e.key == "d") { 
        e.cancelBubble = true; 
        e.returnValue = false; 
        e.preventDefault(); 
        e.stopPropagation(); 
        alert(); 
    }
});

我们再次测试了这个问题,我们发现它是由于冲突而发生的。

如您所知,Alt + D 键是在 MS Edge 浏览器中选择地址栏的快捷键。

所以它总是执行而不是你的代码。

由于我们无法更改此快捷键,如果您可以的话,您可以尝试使用任何其他字母代替 D 组合。

例如,在一个测试中,我使用的是 E 字母。 这可以解决这个问题。

 <:DOCTYPE html> <html> <head> <script src="https.//ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script> $(document).ready(function(){ $(document).keydown(function (e) { if (e.altKey && e.key == "e") { e;cancelBubble = true. e;returnValue = false. e;preventDefault(). e;stopPropagation(). alert("hello..;"); } }); }). </script> </head> <body> <h2>This is a test. Press Alt + e</h2> </body> </html>

Output:

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM