zurück zur Startseite
  


Zurück XHTMLforum > (X)HTML und CSS > (X)HTML
Seite neu laden JavaScript document.createElementNS Problem

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 22.01.2005, 14:13
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 19.01.2005
Beiträge: 59
feelx befindet sich auf einem aufstrebenden Ast
Standard JavaScript document.createElementNS Problem

Hallo!

Langsam freunde ich mich damit an, dass man document.write durch .createElementNS ersetzen muss....

Mir ist aber noch nicht ganz klar, wie ich in einem dynamisch generierten

nachträglich einen Inhalt (Text) einsetzen kann...

Das Testfile

und der entsprechende Scriptausschnitt.

Code:
<script language="Javascript" type="text/javascript">
//<![CDATA[

var inhalt = "bla bla 123 bla hhuhuuuhuuu bla bla"

if (document.createElementNS) {
  var l=document.createElementNS("http://www.w3.org/1999/xhtml","p");
	  l.setAttribute("id", "dynp");
	  l.setAttribute("style", "background-color: #ff2211; width: 250px; height: 150px;");
  document.getElementById("main").appendChild(l);
}
  else {
  var alt = document.getElementById("main").innerHTML;
  var anhang = "<p id=\"dynp\" style=\"background-color: #DDEE11; width: 250px; height: 150px;\">" +inhalt+ "</p>";
  document.getElementById("main").innerHTML = alt + anhang;	
} 
//]]>
</script>
Die Frage ist also, wie ich den Inhalt der Variable 'inhalt' (s. ganz oben) nachträglich in das

schreiben kann, welches ich mit createElementNS generiert habe... (siehe else: für IE). Ich habe verschiedenes Probiert, aber in der JavaScriptConsole des Firefox nur caughtExceptions produziert

Das Skript ist ansonsten vermutlich ziemlich 'rudimentär', wenn also ein besserer Stil möglich wäre, bin ich auch für stilistische Verbesserungen dankbar. Ich habe allerdings extra das Skript nicht unnötig gekürzt, dass es für mich nachvollziehbar bleibt

Danke schonmal im Voraus
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 22.01.2005, 15:40
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 19.01.2005
Beiträge: 59
feelx befindet sich auf einem aufstrebenden Ast
Standard

Hat sich erledigt.

Die fehlende Zeile am Ende der IF-Bedingung lautet:
Code:
  document.getElementById("dynp").appendChild(document.createTextNode(inhalt));
Natürlich kann ich es noch kürzen mit Variablen, aber wie gesagt.. aus lesbarkeits- und Lerngründen hab ich das ned gemacht...
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 22.01.2005, 16:22
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 19.01.2005
Beiträge: 59
feelx befindet sich auf einem aufstrebenden Ast
Standard

hmmm... ein Problem bleibt mit content-type application/xhtml+xml ... innerHTML scheint nicht zu funktionieren. Ist das deswegen, weil wir uns im XML document bewegen und nicht in einem HTML? Jednfalls sobald ich den content-type auf text/html ändere funktioniert innerHTML wieder....

Wie füge ich jetzt dem Beispiel oben die Variable "inhalt" ein, wenn sie statt 'nur Text' auch HTML Syntax hat? Beispielsweise ein
dazwischen wäre?
.createTextNode funktioniert ja nur mit plain text...

hmmm... *weiter probier*
Mit Zitat antworten
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problem beim ein/ausblenden von Spalten in Tabellen via CSS und JavaScript chrisol_76 CSS 2 21.07.2008 17:37
Javascript status abfragen Pr@ana Javascript & Ajax 5 28.08.2006 19:29
Problem: IE versteckt Text & Feedback Herbi CSS 2 11.08.2006 14:39
Javascript Problem - onclick return Spyker Javascript & Ajax 4 11.07.2006 11:54
Problem mit background-image / javascript im IE danliker CSS 3 17.05.2005 21:50


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:40 Uhr.