JeuWeb - Crée ton jeu par navigateur
Attacher des actions au claviers avec Firefox - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Attacher des actions au claviers avec Firefox (/showthread.php?tid=4328)



Attacher des actions au claviers avec Firefox - Thedeejay - 06-09-2009

Bijour Bijour!

Je tente de faire un script qui gere les evenements clavier, donc appui touche -> son + action. Malhereusement ce code est compatible (bouuuuuh) IE seulement... et impossible de trouver la solution ailleurs!

Voici le criminel:

Code :
<script src="http://view.jquery.com/trunk/plugins/sound/lib/jquery.js" type="text/javascript"></script>
<script src="http://view.jquery.com/trunk/plugins/sound/jquery.sound.js" type="text/javascript"></script>

<script>
function process_keypress() {
//alert(window.event.keyCode);
if (window.event.type == "keypress" & window.event.keyCode == 49) {$.sound.play('1a.wav');}
if (window.event.type == "keypress" & window.event.keyCode == 50) {$.sound.play('2a.wav');}
if (window.event.type == "keypress" & window.event.keyCode == 51) {$.sound.play('3a.wav');}
if (window.event.type == "keypress" & window.event.keyCode == 52) {$.sound.play('4a.wav');}
if (window.event.type == "keypress" & window.event.keyCode == 53) {$.sound.play('5a.wav');}
if (window.event.type == "keypress" & window.event.keyCode == 54) {$.sound.play('6a.wav');}
if (window.event.type == "keypress" & window.event.keyCode == 56) {$.sound.play('7.wav');}
if (window.event.type == "keypress" & window.event.keyCode == 55) {$.sound.play('8a.wav');}
}
document.onkeypress = process_keypress;

</script>

pour l'instant cela ne joue que du son, mais uniquement sous IE... le son n'est pas le probleme puisque testé autrement; mais c'est les key press..

Si quelqu'un a une idée...


RE: Actions clavier avec FF - Sephi-Chan - 06-09-2009

Quelque chose m'échappe.
Puisque tu utilises jQuery, pourquoi ne pas utiliser sa gestion des événements keypress ? Quelque chose me dit qu'elle est cross-browser.


Sephi-Chan


RE: Actions clavier avec FF - Yoda54 - 06-09-2009

Bonjour,

C'est assez simple, windows.event est spécifique à IE. Smile
Il faut donc le définir pour les autres navigateurs.


RE: Actions clavier avec FF - Thedeejay - 06-09-2009

trouvé!


il falait ajouter
if(window.event)
keyPressed = window.event.keyCode; // IE hack
else
keyPressed = e.which;

et bidouiller un peu le code... merci!


RE: Actions clavier avec FF - Anthor - 06-09-2009

Sephi +1 qd même et 10 posts plus bas mon ami tu as même les plugins adéquates...


RE: Actions clavier avec FF - Sephi-Chan - 06-09-2009

(06-09-2009, 12:59 PM)Sephi-Chan a écrit : Quelque chose m'échappe.
Puisque tu utilises jQuery, pourquoi ne pas utiliser sa gestion des événements keypress ? Quelque chose me dit qu'elle est cross-browser.


Sephi-Chan



RE: [Résolu][Javascript] Attacher des actions au claviers avec Firefox - Thedeejay - 06-09-2009

je sais, je sais...

j'ai essayé mais impossible de récuperer la touche appuyée..

j'ai pourtant repris les codes officiels, même fait des tests sans rien changer, je ne comprends pas... ca vient p-e de la librarie son...