禁用 ALT+F4,是的,我知道不建议这样做
Disable ALT+F4, yes I know it isn't recommended
我需要一个JavaScript脚本来禁止用户使用ALT + F4关闭。我到处看过,但每个人都说不建议。
甚至可能是不可能的,如果不是,我只需要检测用户何时以这种方式退出并将其记录在数据库中。
这是我当前的脚本,它会检测用户是否按 ALT 或 F4,但我无法让它取消该键。有没有办法让浏览器认为用户也按下了另一个键,因此组合将是 ALT + G + F4,例如,这会破坏 ALT+F4 组合?
//Run on keydown, disable user from quiting via ALT+F4
document.onkeydown = function(evt) {
evt = evt || window.event;
//Get key unicode
var unicode = evt.keyCode ? evt.keyCode : evt.charCode;
//Check it it's ALT or F4 (115)
if (unicode == 115 || evt.altKey == 1)
{
window.event.cancelBubble = true;
window.event.returnValue = false;
}
};
该关键事件(我猜在大多数操作系统上)在发送到浏览器之前由操作系统处理,因此取消浏览器中的事件也无济于事 - 即使它是在浏览器的 UI 中执行的 Javascript,而不仅仅是当前文档。
因此 - 你想做的事情是无法完成的。
可以通过以下方式防止由此产生的窗口关闭:
window.onbeforeunload = funcRef
我认为登陆这里的读者可能希望被提醒这一点(就像我一样)。
有关相关详细信息,请参阅Jquery 阻止窗口关闭
尝试使用以下代码:
window.webContents.on("before-input-event",(event,input)=>{
if(input.code=='F4'&&input.alt)event.preventDefault();});
相关文章:
- 页面在我的javascript执行后重新加载,我不希望它这样做
- 我用脚本创建了一个按钮.我可以通过点击按钮调用其他函数吗?我这样做,但失败了
- 如果我不这样做会发生什么;t在javascript中的变量中分配新的Image
- 如果他们不这样做,就从我的数组中删除东西't没有前缀
- 如果我不这样做会发生什么;t有页码吗?继续循环帖子..为什么需要分页,对于页脚
- 禁用 ALT+F4,是的,我知道不建议这样做
- 使用默认值定义构造函数.我这样做对吗?
- 我刚刚开始使用 MEAN 堆栈.我试图将我的表单提交数据存储到 mongo 数据库,但我无法这样做
- Node.JS/Javascript - 将字符串转换为整数正在返回 NaN,而我不希望它这样做
- 嵌套的 if/else 语句讨论了分配变量.我已经这样做了,但它仍然不起作用
- 当用户离开我的网站时,将标题附加到页面(他们也会这样做)
- 为什么控制台注意到我在这样做之前更改了原型
- 为什么我可以使用(myVar和1)来测试partity,我应该在Javascript中这样做
- 我该怎么翻译?这样做
- Meteor.call回调未执行,并且它'如果我不这样做,它会被默默地忽略'Don’我不去拿东西
- 我怎么能说“;如果宽度>高度“;那么“;这样做"使用jQuery
- 在for循环中创建闭包——我这样做对吗
- 谷歌地图API v.3-无法显示信息窗口,或者当我这样做时,地图的中心位于设计位置
- 如果我不这样做,服务器有什么好的技巧来处理更多的请求吗;不必发回任何数据
- 如何在JavaScript中从较大的字符串中删除一些字符串,当我不这样做的时候'我不知道他们的立场