我需要使用javascript或任何其他方法在我的网站中禁用shift keypress事件。 以下是我的代码:
$(document).ready(function() {
document.onkeydown = checkKeycode
function checkKeycode(e) {
var keycode;
if (window.event) {
keycode = window.event.keyCode;
}
else if (e) {
keycode = e.which;
}
//alert(keycode);
if (keycode == 16) {
alert(keycode);
return false;
}
}
});
答案 0 :(得分:8)
// bind an event listener to the keydown event on the window
window.addEventListener('keydown', function (event) {
// if the keyCode is 16 ( shift key was pressed )
if (event.keyCode === 16) {
// prevent default behaviour
event.preventDefault();
return false;
}
});
答案 1 :(得分:3)
http://api.jquery.com/keypress/
此外,修饰键(,如Shift )会触发keydown事件,但不会触发按键事件。
试试这个
$('#target').keydown(function(event) {
if (event.shiftKey) {
event.preventDefault();
}
}
答案 2 :(得分:1)
document.onkeydown = function (e) {
var e = e || event;
if (e.shiftKey === true) {
return false;
}
};
答案 3 :(得分:0)
你可以试试这个:
jQuery(document).keydown(function(e){
if(e.which === 16) {
e.preventDefault();
return;
}
console.log(e.which);
});
见demo。
使用Firebug并检查控制台输出。