【发布时间】:2021-04-11 05:05:12
【问题描述】:
我想捕获 Ctrl+click 事件、event.keyCode 和所有其他用于检测控制点击的东西在 Chrome 和 Firefox 上都可以正常工作。在 IE 上出现以下错误:
>>警报(event.keyCode);
“需要对象”
我尝试检测 Shift+click,Alt+click 一切都很好。我尝试处理异常,但没有任何效果。我什至尝试检测 keyCode 的返回类型的类型,获取 Alt + click 和 Shift + click 的数字。 Ctrl+click 我无法捕捉到任何东西。
我使用 jQuery 1.10.2 的代码如下:
$(document).keydown(function (event) {
if (event.which == "17") cntrlIsPressed = true;
});
$(document).keyup(function () {
cntrlIsPressed = false;
});
var cntrlIsPressed = false;
function call_new_url(param1) {
if (cntrlIsPressed) {
window.open("http://www.google.com");
}
}
有人可以帮我解决这个问题吗?
【问题讨论】:
-
寻找
event.ctrlKey和event.shiftKey -
event.ctrlKey 在 IE 中没有被检测到,没有警报信息被抛出。我检查了控制台显示的错误消息 >>event.ctrlKey "Object required" function call_new_url(job) { if(event.ctrlKey) alert('ctrl'); if(event.shiftKey) alert('shift'); }
标签: javascript jquery-events keycode