IE8, createElement und CSS/class
    
Siri
    
    
      
    
  - javascript
- 0  Gunnar Bittersmann Gunnar Bittersmann
- 0 dave
- 0 Worf
 nicht angemeldet
 nicht angemeldetHallo,
ich erzeuge ein neues Element:
var newElement = document.createElement("div");
Beim Einhängen des Elements werden die CSS-Stylesheet Eigenschaften nicht "aktiviert".
1. Versuch:
newElement.setAttribute("class", "testclass");
schlug fehl. Gegoogelt: hier und hier führt zum
2. Versuch:
newElement.className= "testclass";
Das neue Element hat keine CSS-Eigenschaften.
3. Versuch:
document.getElementsByTagName("body")[0].className = "testclass";
ist genauso gescheitert wie
4. Versuch:
targetElement = document.getElementById("testtarget");
targetElement.appendChild(newElement);
und
5. Versuch:
targetElement = document.getElementById("testtarget");
targetElement.innerHTML = newElement.innerHTML;
Hat noch jemand eine Idee (außer IE8 zu ignorieren)?
Viele Grüße
Siri
@@Siri:
nuqneH
Beim Einhängen des Elements werden die CSS-Stylesheet Eigenschaften nicht "aktiviert".
Kann ich nicht nachvollziehen.
Qapla'
Hi,
funktioniert bei mir:
  
<!DOCTYPE html>  
<title></title>  
<style>  
	[code lang=css].foo {border: 1em solid orange;}
</style>
<body>
<script>
~~~javascript
var foo = document.createElement('div');
foo.className = 'foo';
	document.body.appendChild(foo);
	</script>  
</body>[/code]  
  
~dave
Hallo,
eventuell funktioniert es mit der "Fragment"-Methode für den IE, wie es im Beitrag IE < 8 und setAttribute/getAttribute unter Punkt "setAttribute('type')" beschrieben ist:
  
var newElement;  
  
try	// IE7  
{  
	newElement = document.createElement('<div class="testclass">');  
}  
catch(e){}  
  
if (!newElement) {  
	// Andere Browser  
	newElement = document.createElement("div");  
	newElement.className = "testclass";	  
}  
Gruss,
Worf
@@Worf:
nuqneH
eventuell funktioniert es mit der "Fragment"-Methode für den IE
Dass sowohl das Erzeugen eines Elements mit normaler DOM-Methode als auch das Setzen eines @class-Attributs als auch die Anwendung der Styles dafür auch im IE 8 funktioniert, wurde doch schon geklärt.
Der Fehler muss irgendwo anders stecken.
Qapla'