0

Im Versuch, neues Fenster zu öffnen, wenn Verschiebung gedrückt wird, wenn der Benutzer eingeben klickt, und eine neue Registerkarte, wenn sie ctrl getroffen. Die Verschiebung Teil funktioniert, aber die ctrl Teil nicht ...Warum funktioniert mein Code zum Erkennen des CTRL-Schlüsselstatus nicht?

var ctrlPressed = false; 
var shiftPressed = false; 
var stb = null; 
function onload() { 
stb = document.getElementById("searchTextBox"); 
} 
    function enter(e) { 

     if (e.keyCode == 13) { 
      if (!ctrlPressed && !shiftPressed) { 
      window.location = "http://search.yahoo.com/search?p=" + encodeURI(stb.value) + "&fr2=sb-top&fr=404_web&pqstr=" + encodeURI(stb.value); 
      } 
      else if (ctrlPressed) { 
      window.open("http://search.yahoo.com/search?p=" + encodeURI(stb.value) + "&fr2=sb-top&fr=404_web&pqstr=" + encodeURI(stb.value)); 
      } 
      else if (shiftPressed) { 
      window.open("http://search.yahoo.com/search?p=" + encodeURI(stb.value) + "&fr2=sb-top&fr=404_web&pqstr=" + encodeURI(stb.value), "_blank"); 
      } 
     } 
    } 
    function searchdown(e) { 
     if (e.keyCode == 17) { 
      ctrlPressed = true; 
     } 
     else if (e.keyCode == 16) { 
      shiftPressed = true; 
     } 
    } 
    function searchup(e) { 
     if (e.keyCode == 17) { 
      ctrlPressed = false; 
     } 
     else if (e.keyCode == 16) { 
      shiftPressed = false; 
     } 
    } 

[Bearbeiten] auch kann ich nicht verwenden jquery

+0

Wo ist Ihre Ereignisdelegation? –

Antwort

2

Kennen Sie event.ctrlKey, die Ihnen sagt, wenn der Transponderschlüssel niedergehalten?

+0

Ja, ich hatte das zuerst und es hat nicht funktioniert, also habe ich diesen Weg versucht – Oztaco

Verwandte Themen