J'ai pris une chaîne et créé un <span>
pour chaque lettre de la chaîne. Mon but est de parcourir les travées, de prendre en compte le retour de pression de touche et de déterminer si la touche est «correcte» ou «incorrecte». Une fois que la classe appropriée a été assignée, je voudrais préformer la même fonction de touche sur l'élément span suivant. Je ne peux pas comprendre comment passer à la deuxième travée. La classe applique, mais tous les commentaires clé supplémentaire continue d'appliquer au premier élément <span>
Appliquer la fonction 'keypress'() au prochain élément <span> une fois que la touche 'keypress' a changé la classe de l'élément <span> sélectionné
exemple: <span>e</span>
<span>x</span>
<span>a</span>
<span>m</span>
<span>p</span>
<span>l</span>
<span>e</span>
window.addEventListener('keypress', function(event){
var $current = document.querySelector('span')
var $next = document.querySelector('span').nextSibling
if ($activeChar === event.key) {
$current.classList.remove('current')
$current.classList.add('right')
} else {
$current.classList.remove('current')
$current.classList.add('wrong')
}
return $next.classList.add('current')
})
Je suis très nouveau pour Javascript et je m'excuse d'avance pour mon manque de compréhension, mais je veux rn. J'ai référencé les livres de JS que j'ai et cherché haut et bas. Je n'ai pas trouvé de solution que je suis capable de mettre en œuvre par moi-même. Un grand merci
Liam, je vous remercie. C'est une excellente façon de résoudre ce problème. Je ne savais rien de la méthode e.keycode. Merci de m'avoir aidé dans ma quête continue d'apprendre. –
N'importe quand! J'utilise ce _tone_ quand je travaille avec 'canvas', si jamais vous avez besoin de moi pour vous montrer les ficelles avec lesquelles je serais heureux de! Mais si vous vous lancez dans le développement de jeux avec HTML et JavaScript, regardez certainement sur canvas –
Fantastic. J'ai entendu parler de la toile mais je n'ai jamais creusé dedans. Je pourrais très bien vous envoyer un message pour l'avenir. Merci beaucoup! –