le son lors du clic sur un bouton fonctionne pour un mais pas pour TOUS

Quelqu'un peut-il me montrer pourquoi si j'essaie de jouer un son comme ça

const button = document.querySelector(".button");
button.addEventListener("click", function () {
document.getElementById("click").play("click.mp3");
});

le son ne jouera que sur le premier bouton (je comprends car il cible le premier élément) avec la classe.button mais si j'utilise querySlectorAll ça ne joue pas du tout s'il vous plait?

Et comment puis-je le faire jouer dans tous les boutons avec la classe.button?

Merci d'avance.

Merci à Barmar d'avoir suggéré d'utiliser une boucle. J'ai aimé ci-dessous et ça marche très bien.


for (let button of buttons) {
button.addEventListener("click", function () {
document.getElementById("click").play("click.mp3");
});
console.log(button);
}


Solution du problème

Dans mon cas, une solution efficace sera addEventListener au parent qui contient ces boutons et fera une condition de vérification que si l'élément cliqué a une classe ou un attribut de données, alors faites jouer votre son.

Commentaires

Posts les plus consultés de ce blog

Comment signer la connexion OKEx API version 5 avec websockets ?

La fonction GCP Cloud pour écrire des données dans BigQuery s'exécute avec succès, mais les données n'apparaissent pas dans la table BigQuery

Erreur Symfony : "Une exception a été levée lors du rendu d'un modèle"