Hallo Leute, folgender Code simuliert ein mathemtaisches Matrizenproplem. Der Code implementiert in einer HTML-Datei folgende Vorgabe:
Ich möchte jetzt gerne prüfen, ob der User die Lösung richtig zusammengeklickt hat. Leider weiß ich nicht,wie ich die Schleife weitercodieren soll
Hier der JS-Code
Die console.log Ausgabe wird im Screenshot aufgezeigt.
Ideen,wie ich meine Intention verwirklichen könnte?
HTML:
<p>Prinzipiell erwirkt ein Mausklick in eine Zelle das Ausschalten dieser und aller unmittelbar benachbarten Zellen (Zellen werden schwarz).<br>Ein erneuter Mausklick in diese oder einer unmittelbar benachbarten Zelle erwirkt ein
einschalten dieser und aller unmittelbar benachbarten Zellen(Zellen werden gelb).<br>Ziel ist es, sämtliche Zellen auf schwarz, also auszuschalten. Die Lösung basiert auf bekannten mathematischen Matrizen <a href="http://mathworld.wolfram.com/LightsOutPuzzle.html" target="_blank">WolframMath</a></p></font>
<p>Lösungen für das Lichterspiel:</p><a href="img/loesungen4.gif" target="_blank">Lösungen</a> </div>
Ich möchte jetzt gerne prüfen, ob der User die Lösung richtig zusammengeklickt hat. Leider weiß ich nicht,wie ich die Schleife weitercodieren soll
Hier der JS-Code
Code:
function myClick(x,y) {
var oben=y-1;
var unten=y+1;
var rechts=x+1;
var links=x-1;
var zeichenkette="bild";
var bildname=zeichenkette+x+y;
var bildoben=zeichenkette+x+oben;
var bildunten=zeichenkette+x+unten;
var bildrechts=zeichenkette+rechts+y;
var bildlinks=zeichenkette+links+y;
if (document[bildname].src.lastIndexOf('on')==-1){
document[bildname].src="img/on.gif";
}else document[bildname].src="img/off.gif";
if (oben>0 && oben<6){
if (document[bildoben].src.lastIndexOf('on')==-1){
document[bildoben].src="img/on.gif";
}else document[bildoben].src="img/off.gif";
}
if (unten>0 && unten<6){
if (document[bildunten].src.lastIndexOf('on')==-1){
document[bildunten].src="img/on.gif";
}else document[bildunten].src="img/off.gif";
}
if (rechts>0 && rechts<6){
if (document[bildrechts].src.lastIndexOf('on')==-1){
document[bildrechts].src="img/on.gif";
}else document[bildrechts].src="img/off.gif";
}
if (links>0 && links<6){
if (document[bildlinks].src.lastIndexOf('on')==-1){
document[bildlinks].src="img/on.gif";
}else document[bildlinks].src="img/off.gif";
}
for (var zeile=1; zeile<6; zeile++){
for (var spalte=1; spalte<6; spalte++){
console.log(document.getElementById(zeichenkette+zeile+spalte));
//hier stecke ich fest
if(document.getElementById(zeichenkette+zeile+spalte).src=="img/off.gif"||document.getElementById(zeichenkette+zeile+spalte).src=="img/on.gif")
alert(); //die alert-box wird nie ausgeführt
}
}
}//End of Function
Ideen,wie ich meine Intention verwirklichen könnte?
Anhänge
Zuletzt bearbeitet: