Einzelnen Beitrag anzeigen
  #3 (permalink)  
Alt 30-09-2008, 19:30
IchBinIch
 Registrierter Benutzer
Links : Onlinestatus : IchBinIch ist offline
Registriert seit: Apr 2003
Beiträge: 324
IchBinIch ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zuerst einmal, du hast recht. Das gewünschte Ergebnis sieht so aus:

Code:
<div id="ersetz_test">
<p>Das ist ein Text der sichtbar bleibt.</p>
<p style="display:none;">Dieser Text ist unsichtbar,</p>
<p style="display:none;">genauso wie dieser</p>
<p><a href="#">Text</a></p> <!-- HIER GEHÖRT'S HIN! -->
</div>
Dann habe ich anhand deines Beispiel auch das einfügen des Links hinbekommen:

Code:
function editTheCode()
{

		var start = document.getElementById('ersetz_test');

	var p = document.createElement("p");
	var a = document.createElement("a");
	a.appendChild(document.createTextNode('!!!TEXT!!!'));
	a.setAttribute("href","#");
	p.appendChild(a);

	start.insertBefore(p,start.childNodes[2]);
	
//	for(var i=2;i<start.childNodes.length;i++)
//		start.childNodes[i].style.display = 'none';
 
}
Hier stehe ich nun vor dem Problem, dass ich die "2" statisch angeben muss. Das liegt daran, dass ein Zeilenumbruch im Quelltext schon als Knoten erkannt wird. Zumindest ab und zu. Das könnte man wohl noch einfach über den nodeType dynamisch hinbekommen. Also auch kein problem.

Zweites Problem ist zur Zeit auskommentiert. Fehlemeldung ist:
Zitat:
Fehler: start.childNodes[i].style is undefined
Auch das sollte sich nach dem ausfiltern der "Textknoten" erledigen.
__________________
ICH BIN ICH!!!

Geändert von IchBinIch (30-09-2008 um 19:43 Uhr)
Mit Zitat antworten