Styles duplizieren
berdn
- javascript
0 wahsaga0 berdn0 berdn0 Dieter Raber0 berdn
HAllo Forum,
ich habe gerade mal versucht ob ich auch auf eine enfache Weise styles "duplizieren" kann.
document.getElementById("editor").style = opener.document.getElementById(opener.ContentID).style
das klappt schonmal nicht ;-(.
Eigentlich müßte ich doch mein Objekt fragen können welches Style mit einen Wert belegt ist, das meinetwegen in einen Array zu kloppen, und dann aus diesen Array meinen anderen Objekt die Stylesheets des ersten Objektes zu zuweisen.
Hat da hierfür vieleicht jemand einen Ansatz ?
Schonmal Danke,
Bernd
hi,
ich habe gerade mal versucht ob ich auch auf eine enfache Weise styles "duplizieren" kann.
document.getElementById("editor").style = opener.document.getElementById(opener.ContentID).styledas klappt schonmal nicht ;-(.
hast du denn dafür sorge getragen, dass javascript über das style-objekt auch die CSS-eigenschaften des zweiten elemente auslesen kann?
gruß,
wahsaga
Hallo wahsaga,
danke für die schnelle Antwort, leider verstehe ich sie nicht ...
Einen kleinen Schritt weiter,
"style" kann wohl nur gelesen aber nicht gesetzt werden.
Bernd
Hallo berdn,
Du kannst aber die einzelnen Styleeigenschaften uebertragen mit
document.getElementById('foo').style.color = opener.document.getElementById('bar').style.color
Das laesst sich vermutlich eleganter loesen, wenn du alle Styleeigenschaften in einem Array uebertraegst.
Warum schreibst Du nicht alle relevanten Style in ein Stylesheet und bindest das auf der zu oeffnenden Seite ein?
Gruß,
Dieter
Hallo Dieter,
danke für den Hinweiß, es scheint als ob ich es so machen müßte ...
ich bin aber eine faule Socke un dachte ich könnt mein Element einfach nach seinen Styles fragen und dann weiterleiten ;-(
Da scheint es sich schon zu Empfehlen sich einmal die Arbeit zumachen,
alle Styleeigenschaften mal in einen Array zu packen und und sich das ganze in eine JS-Libary zu packen.
Bernd
for (var property in htmlobject1.style) {
style_object2[property] = htmlobject2.style[property];
}
wäre mein Ansatz (ohne Gewähr)
Grüße,
Jörg