繁体   English   中英

在没有keydown事件的情况下检测CTRL和SHIFT键?

[英]Detect CTRL and SHIFT key without keydown event?

我一直想知道是否可以检测到CTRLSHIFT键没有使用keydown事件。

原因是我在JavaScript中创建了某种Grid Viewer,并且我通过按住CTRLSHIFT键来实现选择不同的项目,因为它在大多数常见的查看器,编辑器等中起作用。

问题是当焦点不在页面的任何地方时。 例如,我正在向书签添加页面。 然后我按住CTRLSHIFT并单击该项,但它正常工作,因为没有触发keydown。

有什么方法可以省略这个吗? 也许不是,但对于将其视为我自己明显的Bug的客户来说,这可能会令人困惑。

当单击鼠标MDN时,您根本不需要任何键事件来检测ShiftCtrlAlt

Event对象包含以下信息:

element.addEventListener('click', function (e) {
    console.log(e.shiftKey);
    console.log(e.ctrlKey);
    console.log(e.altKey);
});

在jsFiddle演示

这些属性也可以在键盘事件处理程序中读取。

暂无
暂无

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

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