我正在编写一个涉及敏感内容的网络应用程序。已经防止了复制和粘贴。我如何检测某人按下printscreen键,以便在该键被按下时隐藏数据? 不必担心移动电话/相机/屏幕录制软件,因为它们在该环境中不会使用。
简短回答是,您无法可靠地检测或干扰打印屏幕功能。这不是浏览器功能,而是用户系统的功能,因此在大多数情况下,事件发生在您尝试检测它的环境之外。HTML、CSS或JavaScript都无法侦听事件,也不能以可靠的方式阻止其默认操作。您应该重新考虑保护内容的策略,并接受现实,无论您做什么,总会有人可以“窃取”它。编辑:我想,您可以编写一个Java小程序来检测打印屏幕事件的触发,因为Java可能可以访问系统事件。但我没有费心去研究如何做到这一点,因为该功能取决于两个因素-用户在其浏览器中安装和启用了Java,并且Java小程序具有被授权去搜寻系统事件的安全权限。仅供参考:https://stackoverflow.com/a/29965963/4933137