hallo nochmals,
erstmal:
HILFE!!! *g*
Nur kurz zum title attribut: Das Ziel des scriptes ist es in einer html datei voll mit tabellen jede einzelne Zelle zu überprüfen und entsprechende tooltips zu setzen. Dies ist notwendig da die tabellen später erweiterbar sein sollen und die tooltips sollen dann automatisch gesetzt werden....
den rest versteh ich einfach nicht, muss ich mir nocheinwenig anschauen....aber wieso ist da so eine unstimmigkeit mit DOM und IE??....
rest folgt...
Gruß,
Sena
Hi,
return sagt mir garnichts.
das ist schon mal schlecht. 'return' ist eine Standard-Funktion, die Du prinzipiell in _jeder_ Programmiersprache findest.
Was macht return deiner meinen nach?
Es liefert den/die angegebenen Wert/e zurück und *beendet die Funktion*. Ansonsten hätte eine Rückgabe nämlich keinen Sinn.
Btw, hast Du Dir schon mal eine Testausgabe überlegt, anhand derer Du sehen kannst, wie die if-Abfrage _anschließend_ reagieren wird?
Es gibt nicht sehr viele möglichkeiten ein "alert()" einzufügen.
Oh doch, die gibt es. Ein alert() muss auch nicht unbedingt einen Text beinhalten - es kann genauso gut (genauer: oftmals besser) eine Variable beinhalten, z.B. genau die, die Du in Deinem if überprüfen möchtest, oder aber auch die length-Eigenschaft, die die Lebenszeit Deiner for-Schleife definiert.
ich habe allerdings nun ein weiters Problem:
Jessas! Warum in Gottfrieds Namen postest Du hier einen *kompletten* HTML-Code?
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
Warum reduzierst Du die Lesbarkeit Deiner Seite auf Systeme, die aus dem Hause Microsoft stammen?
function anzahltabellen() {
...
anztab = anzahltabellen();
Die Funktion wird im <head> notiert und auch aufgerufen, also lange bevor eine Tabelle überhaupt existieren _darf_. So gesehen ist es nicht ungewöhnlich, dass keine solche gefunden wird. Dennoch müssen in der Funktion die return-Werte stimmen, damit sie bei einem Aufruf von geeigneter Stelle auch sinnvolle Ergebnisse liefert.
for (var j=0; j<document.getElementsByTagName("table")[i].getElementsByTagName("td").length; j++) {
Hier setzt Du plötzlich auf DOM, während Du Dich oben noch auf IE-Browser (4-6) reduziert hast. Warum?
Im script in der funktion anzahltabellen() habe ich ein alert("x!" ) stehen welches aufgerufen wird sobald die seite geladen wurde.
"Sobald die Seite geladen wurde" bedeutet: "Nachdem der Seite per document.write() auf gar keinen Fall mehr etwas hinzugefügt werden kann".
In die for-schleife komme ich garnicht.
Testausgaben.
document.write(document.all[9].tagName);
Kein schlechter Anfang.
auzurufen, doch dann meldet der browser einen Fehler im script.
"Ein Fehler" ist nutzfrei. Welcher Fehler? Ach, ich vergaß - die Fehlermeldungen des IE sind ebenfalls nutzfrei, und außerhalb des IE läuft Dein Script eh nicht.
also wenn man die zahl 9 durch irgendeine zahl zwischen 0 und 8 ersetzt wird das ensprechende tag auch angezeigt im browser.
Ungewöhnlich, es sollte die gleiche Fehlermeldung geben.
Ps: der Rest des scriptes soll anschliessend in der tabelle tooltips implementieren.
Warum machst Du das nicht einfach mittels des title-Attributs?
Cheatah