我想捕获 Ctrl +点击事件,event.keyCode
以及用于检测控制点击的所有其他内容在Chrome和FF上运行良好。在IE上遇到以下错误:
警报(event.keyCode); "需要对象"
我试过检测 Shift +点击, Alt +点击一切正常。我尝试处理异常,但没有任何作用。我甚至尝试检测 Alt + click和 Shift + click的keyCode
获取数字的返回类型的类型。 Ctrl +点击我无法捕获任何内容。
我的代码,使用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");
}
}
有人可以帮我解决这个问题吗?
答案 0 :(得分:1)
您可以在点击监听器中查看event.ctrlKey
和event.shiftKey
,而不是收听keyPress
事件。
$('#myLink').click(function (event) {
if (event.ctrlKey) {
console.info('Ctrl is pressed');
} else {
console.warn('Ctrl isn\'t pressed');
}
if (event.shiftKey) {
console.info('Shift is pressed');
} else {
console.warn('Shift isn\'t pressed');
}
});