STYLE zuweisen...
GELight
- javascript
Nabend alle zusammen,
Ich habe in einer Variable im Hauptfenster das gesamte CSSStyleDecleration Object eines Elements aus einem IFrame gespeichert.
Wenn ich es nun ( innerhalb des IFrame ) mit: meinElement.style = top.elementStyle;
wieder einem Object zuweisen möchte, kommt es zu einem Fehler.
"setting a property that has only a getter"
Was ist mein Fehler?
Gruß Mario
Hallo,
"setting a property that has only a getter"
Was ist mein Fehler?
Du kannst die style-Eigenschaft nicht schreiben, nur lesen.
Du müsstest die Eigenschaften also Stück für Stück kopieren.
Ungetestete Ideen:
elem2.style.cssText = elem1.style.cssText;
cssText erzeugt einen String der Form eigenschaft: wert; ..., in dem alle Eigenschaften drin sein sollten.
Ansonsten:
for (var property in elem1.style) {
elem2.style[property] = elem1.style[property];
}
(Bin ich mir unsicher, dass das alle CSS-Eigenschaften erwischt und sonst keine Objekteigenschaften)
for (var i = 0, property; property = elem1.style.item(i); i++) {
elem2.style[property] = elem1.style[property];
}
(Ich glaube, item() kennt IE nicht)
Siehe http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration
Mathias
Hi... dank dir für den Hinweis.
Das erklärt natürlich einiges.
Dann werd ich mich wohl nur auf das Austauschen des Backgrounds etc. beschränken... sollte auch reichen. Weil das klappt nämlich schon hehe
Ich schau mir das StyleObject aber eh noch näher an, da ich damit später nochmal etwas zu tun haben werde in meinem kleinen Projekt hier. :)
Gruß Mario