如何使用Javascript禁用Windows键(徽标键和菜单键)
How to disable Windows keys (logo key and menu key) using Javascript
我写了这个Javascript代码,但它没有禁用2个windows键(我的意思是标志键和菜单键),虽然:
document.onkeydown = function(e) {
document.title = e.keyCode;
if (e.keyCode == 91 || e.keyCode == 93) {
window.event.keyCode = 0;
window.event.returnValue = false;
return false;
}
};
2窗口。xxx语句实际上没有必要,但我添加它们是为了购买保险(只是怀疑e不完全等于window.event)。
所以我想问这个问题:"有没有一种可行的方法,直接或间接地在Javascript中完成这项工作?"
你的代码看起来是正确的,试着用这个简单的脚本找出真正的关键代码:
document.onkeydown = checkKeycode
function checkKeycode(e) {
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
alert("keycode: " + keycode);
}
要禁用某些键,可以修改函数(例如'Enter'):
document.onkeydown = checkKeycode
function checkKeycode(e) {
var event = e || window.event;
var keycode = event.which || event.keyCode;
if (keycode == 13) {
// return key was pressed
}
}
JavaScript不能停止Windows标志键的效果,该键(释放时)应该会弹出窗口的开始菜单。与其他键结合使用,它具有其他系统范围的效果(如M
=最小化所有窗口)。这是发生在浏览器上下文之外的事情,因此不能也不应该被浏览器中运行的代码阻止。
Windows菜单键可以在某种程度上被禁用,如以下回答所述:
$(function(){ var lastKey=0; $(window).on("keydown", document, function(event){ lastKey = event.keyCode; }); $(window).on("contextmenu", document, function(event){ if (lastKey === 93){ lastKey=0; event.preventDefault(); event.stopPropagation(); return false; } }); });
相关文章:
- 日期选择器使用所有字段的下拉菜单JavaScript和JQuery W/O日历
- 上下文菜单 JavaScript 无法获取所选文本,如果文本是输入标签/文本框
- 活动状态菜单 JavaScript
- 下拉菜单 JavaScript
- 下拉菜单 - Javascript 与仅 CSS - 选择哪个桌面 - 移动兼容性
- Dropline菜单JavaScript延迟
- 下拉菜单javascript函数
- 为什么菜单JavaScript效果不起作用
- 检查菜单链接是否有子菜单JavaScript
- 菜单Javascript多级重叠
- Twitter引导下拉菜单javascript
- onmouseout的问题-简单的下拉菜单Javascript
- 幻灯片菜单Javascript不工作
- 可点击下拉菜单javascript
- 下拉菜单Javascript
- 可折叠菜单javascript问题
- disabled和selected在自定义选择选项菜单(Javascript)中不起作用
- 下拉菜单-javascript下拉菜单,用于更改表中的所有下拉菜单
- 下拉菜单 - Javascript val() 用于选择框未正确链接
- 下拉菜单 - Javascript:关于使用 javascript 创建下拉列表的问题