2010-06-30 5 views
0

je suis en train d'attraper l'événement KeyPress sur la fenêtre (page html ouvert avec une application qui utilise le moteur gecko)onkeypress() ne fonctionne pas

function onkeypress(){ 
     alert("key pressed !") 
} 

i attendent cette fonction à appeler chaque fois qu'un bouton est cliqué , lorsque l'accent est mis sur la fenêtre. Mais la fonction n'a pas été appelée. Une idée de ce qui ne va pas ici? Merci ...

+0

Vous devez accepter l'une des réponses suivantes. Ils sont tous les deux corrects. – DJTripleThreat

Répondre

4

Vous devez attribuer cette fonction à un élément:

var elem = document.getElementById('id-here'); 

elem.onkeypress = function(){ 
    alert("key pressed !"); 
}; 
4

Vous devez définir comme gestionnaire sur le window object si c'est ce que vous êtes après, comme ceci:

window.onkeypress = function() { 
    alert("key pressed !") 
}; 

Ceci va capturer tous les événements keypress qui surviennent (le comportement par défaut, d'où qu'il se trouve dans la page, à l'exception de , vidéos, flash, etc.). Vous pouvez lire more about event bubbling here.