这是一个非常直截了当的问题,其答案似乎很难追查。
为什么javascript中的printscreen没有keydown事件?
我试图查看一些火狐的源代码,看看它是否故意以不同的方式处理 VK_SNAPSHOT,使其无法通过设计捕获,但我没有找到任何东西。
这似乎在 Windows 操作系统堆栈中走得很远,因为 C# 也有这个问题(KeyDown 事件不在 PrintScreen Key 上工作)这个答案提到“printscreen 被操作系统捕获”,但没有为该声明提供任何文档。我试图用谷歌搜索仍然无法找到任何支持文档。
printscreen keydown 事件是否由内核直接处理并且永远不会像 Ctrl-alt-delete 中断一样到达用户空间?这是否发生在键盘驱动程序中,并且不同的键盘驱动程序可能会将其向上传递给 javascript?我是否离基地很远,javascript可以捕捉到keydown事件,而这个问题现在看起来真的很愚蠢?
(顺便说一句,在试图找到这个问题的答案时,我偶然发现了这篇简洁的文章,它教会了我一些关于 SysRq 按钮的历史 - http://royal.pingdom.com/2012/06/26/sysadmin-needs -sysrq-magic/ )
带有“我不知道为什么但是...”的问题链接列表
KeyDown 事件不适用于 PrintScreen Key c#
在 Keyboard Tester 应用程序 VB NET VB.NET中检测 Print Screen keyup 和 keydown