innerHTML
reiner pens
- javascript
0 Struppi
0 reiner pens0 Cybaer
0 Cybaer0 wahsaga
Hallo, ich habe mal wieder ein Problem mit dem Werkzeug des Teufels (dem IE) ich versuche folgendes:
document.getElementsByTagName('style')[0].innerHTML = 'meintest';
Das klappt im FireFox auch wunderbar, bringt allerdings im IE einen JavaScript-Fehler "unbekannter Laufzeitfehler", mir ist nur nicht ganz klar, warum?
mfg reiner pens
document.getElementsByTagName('style')[0].innerHTML = 'meintest';
Das klappt im FireFox auch wunderbar, bringt allerdings im IE einen JavaScript-Fehler "unbekannter Laufzeitfehler", mir ist nur nicht ganz klar, warum?
Das das im FF klappt ist erstaunlich. ein Style Element enthält kein HTML Code, folglich sollte mM. innerHTML auch nicht funktionieren (wie auch beim script Element).
Struppi.
wuerde es denn gehen wenn ich im <head> einen innerHTML = "<style>meintest</style>" mache ?
document.getElementsByTagName('style')[0].innerHTML = 'meintest';
Das klappt im FireFox auch wunderbar, bringt allerdings im IE einen JavaScript-Fehler "unbekannter Laufzeitfehler", mir ist nur nicht ganz klar, warum?
Das das im FF klappt ist erstaunlich. ein Style Element enthält kein HTML Code, folglich sollte mM. innerHTML auch nicht funktionieren (wie auch beim script Element).
Struppi.
Hm, das ist dann natuerlich genau quatsch. Aber mit dem addStyle bekomm ich das auch nicht hin. Leider finde ich kein richtige Dokumentation mit Beispielen dazu. Denn so wie ich das bislang ueberall gelesen habe, klappt das nicht:
onclick="addStyle('body { color: red; background-color: yellow; }');
==>
Fehler: addStyle is not defined
mfg reiner
wuerde es denn gehen wenn ich im <head> einen innerHTML = "<style>meintest</style>" mache ?
document.getElementsByTagName('style')[0].innerHTML = 'meintest';
Das klappt im FireFox auch wunderbar, bringt allerdings im IE einen JavaScript-Fehler "unbekannter Laufzeitfehler", mir ist nur nicht ganz klar, warum?
Das das im FF klappt ist erstaunlich. ein Style Element enthält kein HTML Code, folglich sollte mM. innerHTML auch nicht funktionieren (wie auch beim script Element).
Struppi.
hi,
onclick="addStyle('body { color: red; background-color: yellow; }');
Wenn das alles ist, was du erreichen willst - das kannst du auch über die zwei Anweisungen
document.body.style.color = 'red';
document.body.style.backgroundColor = 'yellow';
erreichen.
Oder auch, in dem du dem body einfach eine andere Klasse zuweist, für die schon die entsprechenden Formatierungen im CSS hinterlegt sind.
gruß,
wahsaga
Hi,
Fehler: addStyle is not defined
Na ja, Du mußt schon das Listing von der verlinkten Seite einbinden. =;-)
*Das* enthält addStyle()!
Oder Du schaust dir die addStyle()-Funktion an, und bastelst dir selbst was ...
Gruß, Cybaer
Hi,
Leider finde ich kein richtige Dokumentation mit Beispielen dazu.
BTW: Die steht, wie auf der verlinkten Seite auch so ziemlich als einziges stand ;-), in eben herunterzuladenden Listing selbst las Kommentar. :-)
Gruß, Cybaer
Hm, das ist dann natuerlich genau quatsch. Aber mit dem addStyle bekomm ich das auch nicht hin. Leider finde ich kein richtige Dokumentation mit Beispielen dazu. Denn so wie ich das bislang ueberall gelesen habe, klappt das nicht:
onclick="addStyle('body { color: red; background-color: yellow; }');
Was ist denn addStyle()?
Du musst diese funktion auch einbinden/schreiben.
So wie ich das sehe suchst du etwas ähnliches wie https://forum.selfhtml.org/?t=135179&m=877315
und auch für dich TOFU liest ist nicht schön.
Struppi.
Hi,
folglich sollte mM. innerHTML auch nicht funktionieren
Zumindest das Lesen klappt in jedem gängigen Browser (Moz, IE, Opera, Safari, Konqueror). Und man kann, mit Ausnahme des IEs, auch mit createTextNode() neue Regeln hinzufügen.
Gruß, Cybaer
Hi,
Das klappt im FireFox auch wunderbar, bringt allerdings im IE einen JavaScript-Fehler "unbekannter Laufzeitfehler", mir ist nur nicht ganz klar, warum?
Weil MS das so möchte. ;-)
Um Styles zu setzen kennt der IE addRule() - der Rest der Welt insertRule().
Coding: CSS-Stylesheets & -Regeln ergänzen
Gruß, Cybaer
hi,
document.getElementsByTagName('style')[0].innerHTML = 'meintest';
Das klappt im FireFox auch wunderbar, bringt allerdings im IE einen JavaScript-Fehler "unbekannter Laufzeitfehler", mir ist nur nicht ganz klar, warum?
Darum, zum x-ten Mal:
innerHTML - "The property is read/write for all objects except the following, for which it is read-only: COL, COLGROUP, FRAMESET, HTML, STYLE, TABLE, TBODY, TFOOT, THEAD, TITLE, TR."
gruß,
wahsaga