10550 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

Nous avons inclus dans le déroulement des dialogues d'un jeu type visual novel des petits quiz à résoudre. Nous avons donc utilisé des boutons radios, le code a été testé avec succès dans une page à part. Viens alors le moment de l'intercaler entre deux dialogue et, surprise !, ça ne marche pas !

Nous utilisons pour le déroulement des dialogues un système de tableau de valeurs (j'avoue ne pas avoir totalement compris, j'espère que vous voyez de quoi je parle), il a donc fallu faire apparaître la div contenant les questions pour une certaine valeur de "j", la variable récupérant les valeurs du tableau, seule modification apportée par rapport au code fonctionnel. Nous arrivons donc au problème : soit la première question refuse de voir l'une de ses réponses cochée, soit la condition "toutes les réponses correctes" ne répond pas correctement. Ce n'est donc pas un problème de HTML, mais de JS... Mes efforts pour régler ce problème se sont avérés inutiles, je m'en remet donc à vous pour comprendre le problème...

Voici donc le code JS :

if(j==5){
		$("#deduction1").css("display","inline");
		$(".pseudo").css("display", "none");	
			
		function TestReponse(){
			ResultReponse ("Q1", "Q1R", "R1-2");
			ResultReponse ("Q2", "Q2R", "R2-1");
			ResultReponse ("Q3", "Q3R", "R3-2");
		
			if (i == 3){
				window.alert("Je pense avoir tout bon, nous pouvons continuer !");
				$("#deduction1").css("display","none");
				$(".pseudo").css("display", "none");
			}
	
			else{
				window.alert("Hum... Ça ne va pas, j'ai dû me tromper quelque part... Recommençons.");
				i = 0;
			}
		}
			
		$("button").on("click", TestReponse);
	}


(La fonction ResultReponse si cela vous intéresse :

function ResultReponse (reputilisateur, namerep, bonnereponse){
	var reputilisateur = $("input[name="+namerep+"]:checked").val();
		
	if (bonnereponse == reputilisateur){
		i++
	}
		
	else{
		i = i;
	}
}
)

Il y a trois déductions de ce type dans le code, je n'en place ici qu'une seule pour éviter de surcharger le post, mais elles sont toutes faites de la même manière. Je n'ai pas pu tester les autres car la div en question refuse ensuite de disparaître...

En espérant obtenir rapidement une réponse Smiley sweatdrop
Modifié par Canard_en_plastique (05 May 2019 - 20:18)