|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : avril 2011 Messages : 3 ![]() |
Bonjour à tous,
Je suis en train de développer une petite application JS, dans un canvas ; c'est un jeu dans lequel un personnage est contrôlé par les touches directionnelles du clavier. Seulement voilà, la page étant trop grande pour être affichée dans son intégralité, un appui sur les touches haut ou bas provoque en même temps le défilement de la page, ce qui devient agaçant à la longue. Auriez-vous une idée de la façon dont je pourrais m'y prendre, pour empêcher ces touches d'avoir un autre effet que de diriger le personnage ? Je vous remercie à l'avance pour vos précieuses réponses ! |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() Inscription : novembre 2006 Messages : 1 402 ![]() |
Bonjour,
Tu peux rajouter un à la fin de ta fonction qui gère l'évènement clavier.
__________________
Toute question technique envoyée en MP ira directement à la poubelle ![]() Un code ne marchera jamais,il n'a jamais reçu la capacité de se déplacer. Inutile donc de dire "ça marche pas", donnez plûtot des informations précises afin de mieux pouvoir vous aider. ![]() Grand gourou de la -attitude - Sauvons Internet!
|
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Inscription : avril 2011 Messages : 3 ![]() |
Merci ! Je l'ajoute comme ceci ?
Code :
J'ai rajouté cette ligne, mais la page s'agite toujours... Une idée ? |
||
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() ![]() Inscription : novembre 2006 Messages : 1 402 ![]() |
Avec
Code :
addListener(document, "keydown", function(e) { This.keyPress(This,e);return false;});
__________________
Toute question technique envoyée en MP ira directement à la poubelle ![]() Un code ne marchera jamais,il n'a jamais reçu la capacité de se déplacer. Inutile donc de dire "ça marche pas", donnez plûtot des informations précises afin de mieux pouvoir vous aider. ![]() Grand gourou de la -attitude - Sauvons Internet!
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : avril 2011 Messages : 3 ![]() |
Flûte... Ça défile toujours. Que ce soit dans la fonction à l'intérieur du addListener, dans la fonction addListener elle-même ou dans la fonction keypress, l'ajout de "return false" à la fin ne change rien.
A quel niveau les touches directionnelles sont-elles interprétées par le navigateur, pour le défilement ? Avant ou après l'event ? |
|
|
00
|
|
|
#6 | ||
![]() ![]() Inscription : janvier 2011 Messages : 2 933 ![]() |
Bonjour,
il faut éviter que l'événement ne se propage donc ajouter en fin de fonction un truc du style Code :
[/edit] |
||
|
|
10
|
Copyright © 2000-2012 - www.developpez.com