minicrispie: Element angeblich nicht gefunden ...

Beitrag lesen

Hallo,

und wieder einmal gibts Probleme ;)
um mal wieder ein bisschen mit JavaScript herumzuspielen hab ich folgendes Problem versucht zu lösen:
ich will eine Seite haben, die mir alle anderen Seiten meine Wahl öffnet und diese Kontrollieren kann. Das hab ich auch schon mit normalen Funktionen geschafft. Dann hab ich ein Closure drumgebaut und seitdem Findet er ein HTML-Element angeblich nicht mehr ... irgendwie versteh ich das nicht ganz, da es eindeutung im Quelltext vorhanden ist.

Hier einmal der Quelltext. Der Ort des Fehlers ist markiert.

  
<html>  
	<head>  
		<title></title>  
		  
		<script type="text/javascript">
~~~~~~javascript
  
			var fenster = {  
				//Die Adressen aller Fenster  
				adressen: new Array(  
					/*"www.dampfer.net",  
					"www.schueler.cc",  
					"forum.de.selfhtml.org",  
					"www.gondal.de/signups/login",  
					"www.wurzelimperium.de",  
					"www.die-staemme.de",  
					"www.pc-labor.hn.vc",  
					"www.arcor.de",  
					"www.gmx.de"*/  
					"www.google.de",  
					"www.google.de"  
				),  
				controlls: null,  
				offene_fenster: 0,  
			  
				open: function()  
				{  
					content  = "<table>";  
					content += "<tr><td colspan=\"3\">Fensterkontrolle</td></tr>";  
					  
					fenster.controlls = new Array( fenster.adressen.length );  
				  
					//Alle Fenster mit den Adressen im Array öffnen  
					var i = 0;  
					for( i=0; i<fenster.adressen.length; i++ )  
					{  
						adresse     = "http://" + fenster.adressen[i] + "/";  
						bezeichnung =                     "Fenster_nr_" + i;  
						fenster.controlls[i] = window.open( adresse, bezeichnung, "" );  
						  
						//Den Controller für das Fenster schreiben  
						content += "<tr id=\"elem_" + i + "\">";  
						content += "<td>" + ( i + 1 ) + ".</td>";  
						content += "<td>" + adresse + "</td>";  
						content += "<td><a href=\"#\" onclick=\"fenster.close(" + i + ")\">schliessen</a></td>";  
						content += "</tr>";  
						  
						fenster.offeneFenster++;  
					}  
					  
					content += "</table>";  
					document.getElementById( "controller" ).innerHTML = content; // !HIER TRITT DER FEHLER AUF!  
					  
					//Die Fenster im Abstand von 5 Sekunden prüfen  
					setTimeout( "fenster.check()", 5000 );  
				},  
				  
				check: function()  
				{  
					var i = 0;  
					for( i=0; i<fenster.controlls.length; i++ )  
					{  
						if( fenster.controlls[i].closed == true )  
						{  
							fenster.controlls[i].close( i );  
						}  
					}  
					  
					setTimeout( "fenster.check()", 5000 );  
				},  
				  
				close: function( id )  
				{  
					if( fenster.controlls[id].closed == false )  
					{  
						fenster.controlls[id].close();  
						document.getElementById( "elem_" + id ).style.display = "none";  
						  
						fenster.offeneFenster--;  
						  
						if( fenster.offeneFenster == 0 )  
						{  
							document.body.innerHTML  = "Keine Fenster mehr vorhanden<br><br>";  
							document.body.innerHTML += "<input type=\"button\" value=\"Fenster öffnen\" onclick=\"fenster.open()\">";  
						}  
					}  
					else  
					{  
						alert( "Das Fenster ist bereits geschlossen" );  
					}  
				}  
			};  
			  
			fenster.open();
	~~~html

</script>
</head>

<body>  
	<div id="controller"></div>  
</body>  

</html>

  
  
Die Fehlerkonsole im Firefox 3.0.10 gibt mir folgendes aus:  
Fehler: document.getElementById("controller") is null  
Quelldatei: file:///C:/\*\*\*\*\*/open.html  
Zeile: 50  
  
Könnt ihr helfen?  
  
  
MfG. Christoph Ludwig

-- 
Wo die Sprache aufhört, fängt die Musik an...  
Selfcode:  sh:) fo:) ch:° rl:( br:^ n4:} ie:{ mo:} va:) js:| de:] zu:) fl:( ss:| ls:~  
  
Go to [this](http://pc-labor.hn.vc/Homepage/index.php)