最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

jquery - Disable a key press event through JavaScript - Stack Overflow

programmeradmin10浏览0评论

I need to disable shift keypress event in my site by using JavaScript or any other method. Below is my code:

$(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;
    }
  }
});

I need to disable shift keypress event in my site by using JavaScript or any other method. Below is my code:

$(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;
    }
  }
});
Share Improve this question edited Apr 28, 2022 at 9:27 Brian Tompsett - 汤莱恩 5,89372 gold badges61 silver badges133 bronze badges asked Nov 25, 2011 at 12:39 ArunArun 1,7049 gold badges26 silver badges41 bronze badges 2
  • 1 This is not a code request forum. Explain what you tried...add some code, show examples and explain the problem. – Bas Slagter Commented Nov 25, 2011 at 12:43
  • 1 @Neon i need to be briefed.... – Sankar M Commented Nov 25, 2011 at 12:58
Add a comment  | 

4 Answers 4

Reset to default 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;
    }

});

http://api.jquery.com/keypress/

In addition, modifier keys (such as Shift) trigger keydown events but not keypress events.

Try this

$('#target').keydown(function(event) {
  if (event.shiftKey) {
    event.preventDefault();
  }
}
document.onkeydown = function (e) {
     var e = e || event;

     if (e.shiftKey === true) {
          return false;
     }
};

You may try this:

jQuery(document).keydown(function(e){
    if(e.which === 16) {
        e.preventDefault();
        return;
    }
    console.log(e.which);
});

See demo.

Use Firebug and check console output.

发布评论

评论列表(0)

  1. 暂无评论