J.S Whileschleife geht nicht

ahamm

Mitglied
Hallo Allezusammen!!
Ich habe ein Problem und zwar funktioniert dieserCode nicht:
HTML:
<script type="text/javascript">
		//<![CDATA[
		j = 0;
			do {
				document.getElementById('boxID1').innerHTML += '<div class="gbox2"><div class="player1" id="none' + j + '" ><img  src="none_s.GIF" border="1" width="40" height="40"></div></div>';
			++j
			}
			while (document.getElementbyID("none"+ j ).style.left != '50px' && document.getElementbyID("none"+ j).style.top != '95px');
			//]]>
		</script>
Also mit dieser Whileschleife soll ein neues Puzzleteilchen genriert werden soband sich das Alte von der Position 50 x 95px entfernt hat
funktioniert aber nicht.kann mir Jemand sagen warum?
Danke..
 
Zuletzt bearbeitet:
Hi,

du verwendest in der Bedingung der while-Schleife die Methode getElementbyID. Da JS Gross- und Kleinschreibung unterscheidet, muss es korrekt jedoch getElementById.

Ciao
Quaese
 
Danke
Ist aber nicht der Einzige Fehler....
Funktioniert trozdem nicht...
Kann mir Jemand helfen?
Sieht da Jemand einen 2 ten Fehler der Fatal ist
Danke!!
 
Code:
<script type="text/javascript">
	//<![CDATA[
	j = 0;
	do { 
		document.getElementById('boxID1').innerHTML += '
                                                            j =  0 1 2 3 4 5 
            <div class="gbox2"><div class="player1" id="none' + j + '" >
                <img  src="none_s.GIF" border="1" width="40" height="40"></img>
            </div>';
		++j  j = 1 2 3 4 5 6
	}while (document.getElementbyID("none"+j).style.left != '50px' && 
            document.getElementbyID("none"+j).style.top != '95px');
	//]]>
</script>

mhm den Fehler seh ich das fliegt schon nach den ersten Durchlauf raus , du erstellst das Element mit der ID none0 und überprüfst dann none1. Gibs aber zu diesem zeitpunkt noch nicht.
 
Zuletzt bearbeitet:
also
Ich hatte es jetzt so ausprobiert


HTML:
<script type="text/javascript">
		//<![CDATA[

		j = 0;
document.getElementById('boxID1').innerHTML += '<div class="gbox2"><div class="player1" id="none' + j + '" ><img  src="none_s.GIF" border="1" width="40" height="40"></div></div>';

while (document.getElementbyID("none"+ j ).style.left != '50px' && document.getElementbyID("none"+ j).style.top != '95px');			
 {
				document.getElementById('boxID1').innerHTML += '<div class="gbox2"><div class="player1" id="none' + j + '" ><img  src="none_s.GIF" border="1" width="40" height="40"></div></div>';
			++j
			}
			
			//]]>
		</script>

Bekomme dann eine Fehlermeldung und zwar:
A Script on this Page may be Busy or it may have stopped responding....
Warum eigentlich?
 
Also ich habe es Jetzt anders versucht und bin auf diesen Quellcode gekommen.....
Funktioniert aber nur bis zur 2tn Box dann ist zuende...Weiss Jemand warum?
Danke




HTML:
j=1;	
			document.getElementById("boxID1").innerHTML += '<div id="box1"></div>'		
			document.getElementById("box1").innerHTML += '<div class="gbox2"><div class="player1" id="none1" ><img  src="none_s.GIF" border="1" width="40" height="40"></div></div>';
		           
									
			
				var oElement = function(e){
					if (j != 1) {
						document.getElementById("boxID1").innerHTML += '<div id="box' + j + '"></div>'
						document.getElementById("box" + j).innerHTML += '<div class="gbox2"><div class="player1" id="none' + j + '" ><img  src="none_s.GIF" border="1" width="40" height="40"></div></div>';
						
					}
				}
				YAHOO.util.Event.addListener("box" + j, "click", oElement);
			j++;
 
Hab es geloest und zwar musste man Statisch ein parr Boxen generieren und dann geht das..

Nun eine Andere Frage und zwar: Ich bneutzte die Yahoo ui und ich moechte

dd.onDragDrop = function(e, id) {
alert("dd was dropped on " + id);
}


einbinden. wie kann ich diese Funktion aufrufen
Ich moechte zum Beispiel dass wenn ich das 1te element aufs 2te Leg mir dann die Alertbox entgegenspringt?
Wie mache ich das?
MFG
 

Neue Beiträge

Zurück