DHTML mit DOM
Martin
- dhtml
Hallo!
Ich möchte mit dem Befehl getElementById('DieId') einem bestimmten Bereich (DieId) einen Inhalt zuweisen.
Bei dem IE geht das mit document.all.DieId.innerHTML = "...", wie sieht das bei DOM aus?
Und wie kann ich beim Netscape und mit DOM einen Inhalt eines Bereiches wieder auslesen?
Bei dem IE geht das mit document.all.DieId.innerHTML, wie sieht das bei den anderen Modellen aus?
Außerdem verzweifle ich immer noch bei meinem Problem "Sound stoppt bei einer DHTML-Animation", kann mir auch dort jemand weiterhelfen?
Danke für Eure Hilfe und Mühe,
Martin
Hi Martin,
als Einstieg zu empfehlen: http://selfhtml.teamone.de/dhtml/modelle/dom.htm
Näheres zum DOM dann in dem Teil von SelfHTML, der passenderweise JavaScript/DOM heißt.
Grüße,
Utz
Also komme ich an den Inhalt so ran:
document.getElementById("DieId").firstChild.nodeValue = "HTML-Code";
?
Und kann ihn so auslesen:
document.getElementById("DieId").firstChild.nodeValue;
?
Und wie gehts beim Netscape?
Und kann ich beim Netscape anstelle von layer auch div nehmen?
Und nochwas:
Funktioniert das bei allen Browsern:
fenster = window.open('');
fenster.document.write('HTML-Code');
?
Und welchen Befehl gibt es für den Netscape anstelle von alert?
Hoffe ihr könnt mir bei diesen vielen Fragen weiterhelfen!
Danke,
Martin
;-(
Ich bin gleich am Verzweifeln,
es muss doch irgendwie geh`n.
Könnt ihr mir helfen,
bei meinem Problem?
Martin
Hi Martin,
so, mal der Reihe nach: Erstens muss ich sagen, dass wir alle sehr viel Wert drauf legen, dass die Leute viel selber (self halt *g*) rumprobieren. Daher mein Vorschlag: probier doch erst mal aus, was Du mit document.getElementById("DieId").firstChild.nodeValue; auslesen kannst. Wenn Dich wundert, was dabei rauskommt, lies die entsprechende Stelle noch mal, wenn's dann noch nicht klar ist, dann frag noch mal. Wenn Du dann weißt, was Du mit nodeValue auslesen kannst, müsste Dir auch klar sein, was Du mit nodeValue zuweisen kannst - und was nicht.
Und wie gehts beim Netscape?
Genau so (6). Bzw. ganz anders (4). Bzw. gar nicht (<=3). Das hängt ganz davon ab, _welchen_ Netscape Du meinst. Über DHTML beim Netsi 4 gibt es ein eigenes Kapitel in SelfHTML, heißt "Das alte Modell von Netscape" o.s.ä. und findet sich auch im DHTML-Abschnitt.
Und kann ich beim Netscape anstelle von layer auch div nehmen?
Ah, Du meinst wohl 4. Ja, sofern Du das Div per CSS absolut positionierst. Dann wird es intern als Layer behandelt.
Funktioniert das bei allen Browsern:
fenster = window.open('');
Nö, funktioniert nicht bei allen Browsern. Im Archiv findest Du Beispiele, wie das mit allen Browsern funktioniert.
Und welchen Befehl gibt es für den Netscape anstelle von alert?
Was gefällt Dir an alert(); nicht? Warum willst Du ihn ersetzen?
Hoffe ihr könnt mir bei diesen vielen Fragen weiterhelfen!
Ist schwierig, Deine Fragen sind sehr unspezifisch. Ggf. mal ein Stück Quellcode posten, an dem Du arbeitest (mit konkreter Fehler/Problembeschreibung), würde das Antworten erheblich vereinfachen.
Grüße,
Utz
Was gefällt Dir an alert(); nicht? Warum willst Du ihn ersetzen?
Im Gegenteil, alert gefällt mir sehr. Aber irgendwie scheint das mit dem Netscape nicht zu funktionieren, also suche ich eine Alternative!
Danke für deine Hilfe,
Martin
Hi Martin,
Im Gegenteil, alert gefällt mir sehr. Aber irgendwie scheint das mit dem Netscape nicht zu funktionieren, also suche ich eine Alternative!
Oh, Netscape kann ab 2.0 alert(); total gut *g* Wenn Du damit Schwierigkeiten hast, kann das zwei Möglichkeiten haben:
Ich kann's nur wiederholen: poste mal ein bisschen Quelltext damit man sehen kann, wo das Problem liegt.
Grüße,
Utz
Hallo!
Hier der Quelltext:
<html>
<head>
<script>
window.alert('Test'); //alert('Test'); reicht aber eigentlich auch aus
</script>
</head>
<body>
</body>
</html>
Klappt im IE, aber nicht bei meinem Netscape!
Wenn du es im Netscape 6.2 getestet hast und es funktioniert, dann ist mir das auch recht, da ich dann sicher sein kann, dass es "normalerweise" funktionieren würde.
Danke,
Martin
Hi Martin,
der Fehler ist: im Head kannst Du Funktionen, Variablen usw. definieren. Jegliche Benutzerinteraktion muss aber aus dem Body aufgerufen werden - entweder, indem die Anweisung dort geschrieben wird, oder von dort ein Funktionsaufruf kommt. alert() ist natürlich eine Benutzerinteraktion.
Folglich funktioniert es also, wenn Du es so machst:
<html>
<head>
</head>
<body>
<script>
window.alert('Test'); //alert('Test'); reicht aber eigentlich auch aus
</script>
</body>
</html>
Oder aber:
<html>
<head>
<script>
function hallo() {
window.alert('Test'); //alert('Test'); reicht aber eigentlich auch aus
}
</script>
</head>
<body onLoad="hallo();">
</body>
</html>
Klappt im IE, aber nicht bei meinem Netscape!
*seufz* Wann merken denn die Leute endlich, dass der IE mit seiner riesengroßen Fehlerkorrektur als Entwicklungsbrowser komplett ungeeignet ist?
Grüße,
Utz
Hi!
Danke erstmal für deine Mühe und Hilfe!
Aber leider klappts mit beiden von dir vorgeschlagenen Versionen auch nicht!
Grüße,
Dave
Hi
Aber leider klappts mit beiden von dir vorgeschlagenen Versionen auch nicht!
Das ist Quatsch, beide Varianten gehen (Deine erste übrigens bei mir auch).
Mach Dir doch bitte die Mühe, _exakt_ _jenen_ Code zu probieren. Nur so wie er ist, nichts anderes dabei. Nicht vergessen: JavaScript aktivieren.
Grüße,
Utz
Hi!
Aber leider klappts mit beiden von dir vorgeschlagenen Versionen auch nicht!
Das ist Quatsch, beide Varianten gehen (Deine erste übrigens bei mir auch).
Mach Dir doch bitte die Mühe, _exakt_ _jenen_ Code zu probieren. Nur so wie er ist, nichts anderes dabei. Nicht vergessen: JavaScript aktivieren.
Ja, habe ich bereits gemacht, klappt aber wie gesagt nicht. Aber trotzdem DANKE, denn ich bin mir ziemlich sicher, dass es an meinem Netscape liegt und nicht an den Scripts!
Grüße,
Martin
Nein, leider klappts mit beiden von dir vorgeschlagenen Versionen auch nicht!
Danke trotzdem für deine Mühe und Hilfe,
Martin
P.S.: Wenn irgendwer Netscape 6.2 hat, bitte melden!