style vs. setAttribute
Keine Frage: Die arbeiten nicht gegeneinander.
Während mit style ausschließlich HTML-Elemente angesprochen werden können,
kann setAttribute auch XML/SVG-Elementen Eigenschaften zuweisen.
Beispiel für den Container div | |
rot
orange |
Ein Container mit der Hintergrundfarbe
silver
|
Beispiel angewendet auf das SVG-Element rect
style.backgroundColor=farbe |
|
rot
orange setAttribute("fill",farbe) gelb grün |
Die für XML andere Syntax ist dafür entscheidend.
Diese Elemente können nicht mit color: oder background-color: ihre Eigenschaften erhalten. Dafür wird fill eingesetzt und dies ist wiederum nur mit setAttribute realisierbar.
Anmerkung: Da die Änderung der Hintergrundfarbe bzw. der Versuch textlich dokumentiert wird und beim MSIE die Ausgabe
obj_svgtspan.innerHTML = wert ;
im SVG-Element tspan nichts bewirkt, muss wieder eine Browserweiche her:
if (IE) MSIE(obj_svgtspan,hgf) ;
function MSIE(obj, wert){
obj.firstChild.nodeValue = wert ; }
Elemente des Beispiels:
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
<div class='demo'>
|
Der JavaScript-Bereich:
91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 |
<script>
|