3

$(document).keyup(function(e) {

  if (e.shiftKey && e.keyCode == 65 && e.keyCode == 83) {

    url = "https://stackoverflow.com/";

    window.location.replace(url);
  }

});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
Aniket G
  • 3,471
  • 1
  • 13
  • 39
  • You can only detect one keypress at a time, so this won't work. Have a look here: https://stackoverflow.com/a/12444641/2539720. That might explain it. – putvande Mar 16 '19 at 22:16

2 Answers2

-3

I made a log function so you can see what key code's are being used. And set it up with the enter key.

document.body.addEventListener('keyup', logKey);
function logKey(e) {
    console.log(`KeyCode: ${e.code}`)
    if (e.code === 'KeyS' || e.code === 'Enter') {
        let url = "https://stackoverflow.com/";
        window.location.replace(url);
    }
}
ABC
  • 2,068
  • 1
  • 10
  • 21
-4

As @putvande said you can detect only one key press at a time, a trick i suggest you is to detect multiple keydown combinations, like this:

let shiftkey_press = false;
let A_press = false;
let S_press = false;
document.onkeydown = function(e) {

  if (e.shiftKey ) {
    shiftkey_press = true;
  }
  if (e.keyCode == 65 ) {
    A_press = true;
  }
  if (e.keyCode == 83 ) {
    S_press = true;
  }
    console.log("shiftkey_press:", shiftkey_press)
    console.log("A_press:", A_press)
    console.log("S_press:", S_press)

  if (shiftkey_press && A_press && S_press ){
    url = "https://stackoverflow.com/";

    // window.location.replace(url);
    alert(url);
  }

}

yeah i know... it's a litle bit nasty, but i think it will do the trik, let me know if it's work please!

A WORKING EXAMPLE: https://jsfiddle.net/b7an8L12/

EDIT:

i just replace your window.location.replace by an alert() "MAKE SURE TO OPEN THE CONSOLE TO SEE WHAT's HAPPENING!" :-)

Sanix darker
  • 105
  • 2
  • 5