Andere CSS Datei während Sitzung einlesen
Unwissender
- javascript
Hallo,
ja, das Problem steht schon im Thema.
Wie kann ich eine andere CSS-Datei, noch während der Sitzung, zum Beispiel mit klick auf Button oder ähnliches, einlesen, und so das aussehen der Seite verändern?
MfG ein Unwissender
Hallo,
Wie kann ich eine andere CSS-Datei, noch während der Sitzung, zum Beispiel mit klick auf Button oder ähnliches, einlesen, und so das aussehen der Seite verändern?
Indem du die „href“-Eigenschaft des Stylesheets-Links veränderst. Was ist daran so schwer?
mfg. Daniel
Hallo,
Sorry, und wie?
hab gerade voll Blackout.
MfG
Hallo,
Sorry, und wie?
Zuerst greift du auf das <link>-Element zu. Dazu verwendest du entweder http://de.selfhtml.org/javascript/objekte/document.htm#get_elements_by_tag_name@title=getElementsByTagName() oder du gibst ihm eine ID und verwendest http://de.selfhtml.org/javascript/objekte/document.htm#get_element_by_id@title=getElementById().
Wenn du das gemacht hast, schaust du erstmal in die http://de.selfhtml.org/javascript/objekte/htmlelemente.htm@title=HTML-Elementobjekt-Referenz von SELFHTML. Du willst wissen, welche Eigenschaften <link>-Elemente haben, also klickst du auf „link“ und landest http://de.selfhtml.org/javascript/objekte/htmlelemente.htm#link@title=hier.
Wie du siehst, existiert die „href“-Eigenschaft, mit der du den Verweis auf die CSS-Datei ändern/auslesen kannst.
Da ich gerade sehe, dass sich dort schon ein <http://de.selfhtml.org/javascript/objekte/anzeige/htmlelemente_link.htm@title=schönes Beispiel> befindet, brauch ich wohl nicht mehr viel darüber schreiben.
hab gerade voll Blackout.
Du hast es dir aber schonmal angeeignet oder?!
mfg. Daniel
Hallo,
Ja danke das wars.
Wenn du das gemacht hast, schaust du erstmal in die http://de.selfhtml.org/javascript/objekte/htmlelemente.htm@title=HTML-Elementobjekt-Referenz von SELFHTML. Du willst wissen, welche Eigenschaften <link>-Elemente haben, also klickst du auf „link“ und landest http://de.selfhtml.org/javascript/objekte/htmlelemente.htm#link@title=hier.
Das hab ich ein paar Sekunden vor deinem Posting gefunden.
Danke trotzdem für die Hilfe.
Du hast es dir aber schonmal angeeignet oder?!
Ja.
Ich wusste nur nicht wie ich auf ein Head-Objekt zugreif.
Und das mit der ID ist mir auch dann eingefallen wo ich gelesen habe.
Danke nochmal.
Problem gelöst.
Schönen Abend noch.
MfG ein Unwissender.
Hello out there!
Wie kann ich eine andere CSS-Datei, noch während der Sitzung, zum Beispiel mit klick auf Button oder ähnliches, einlesen, und so das aussehen der Seite verändern?
Völlig ohne JavaScript: mit Click auf Ansicht > Webseiten-Stil*, wenn es als <http://de.selfhtml.org/html/kopfdaten/beziehungen.htm#quellen@title=alternatives Stylesheet> eingebunden wurde:
<link rel="stylesheet" type="text/css" href="foo.css" title="foo" />
<link rel="alternate stylesheet" type="text/css" href="bar.css" title="bar" />
See ya up the road,
Gunnar
* in Browsern (sprich nicht IEs), die das unterstützen
Hello out there!
Wie kann ich eine andere CSS-Datei, noch während der Sitzung, zum Beispiel mit klick auf Button oder ähnliches, einlesen, und so das aussehen der Seite verändern?
Völlig ohne JavaScript: mit Click auf Ansicht > Webseiten-Stil*, wenn es als <http://de.selfhtml.org/html/kopfdaten/beziehungen.htm#quellen@title=alternatives Stylesheet> eingebunden wurde:
<link rel="stylesheet" type="text/css" href="foo.css" title="foo" />
<link rel="alternate stylesheet" type="text/css" href="bar.css" title="bar" />
>
> See ya up the road,
> Gunnar
>
> \* in Browsern (sprich nicht IEs), die das unterstützen
Nee, sorry so war das nicht gemeint.
Wenn der Benutzer einen Radiobutton anklick soll eine andere CSS Datei geladen werden.
Und das ist nicht nur eine sonderen mehrere. (Also meherer Radiob. meherer Css).
MfG
Hello out there!
Click auf Ansicht > Webseiten-Stil*
Nee, sorry so war das nicht gemeint.
Wenn der Benutzer einen Radiobutton anklick soll eine andere CSS Datei geladen werden.
Ob es sinnvoll ist, eine im Browser bereits vorhandene Funktion nochmals mit JavaScript nachzubauen, darüber mag man geteilter Meinung sein.
Und das ist nicht nur eine sonderen mehrere.
Es lassen sich durchaus mehrere alternative Stylesheets angeben:
<link rel="stylesheet" type="text/css" href="foo.css" title="foo" />
<link rel="alternate stylesheet" type="text/css" href="bar.css" title="bar" />
<link rel="alternate stylesheet" type="text/css" href="baz.css" title="baz" />
<link rel="alternate stylesheet" type="text/css" href="quz.css" title="quz" />
See ya up the road,
Gunnar
PS: Und sei bitte kein Vollquottel.
Hallo,
mit Click auf Ansicht > Webseiten-Stil*, wenn es als <http://de.selfhtml.org/html/kopfdaten/beziehungen.htm#quellen@title=alternatives Stylesheet> eingebunden wurde:
Wenn der Browser sich die Einstellung merken könnte, wäre das eine klasse Option. Leider ist das aber nicht der Fall (außer bei „kein Stil“).
mfg. Daniel
Hello out there!
Wenn der Browser sich die Einstellung merken könnte, wäre das eine klasse Option. Leider ist das aber nicht der Fall (außer bei „kein Stil“).
Ja, ein Fall für die jeweiligen Bugtracker.
Aber auch bei der JavaScript-Lösung müsste die ausgewählte Stylesheet-Option beim Link auf andere Seiten (derselben Site) als Parameter übergeben werden.
See ya up the road,
Gunnar
Hallo,
Wenn der Browser sich die Einstellung merken könnte, wäre das eine klasse Option. Leider ist das aber nicht der Fall (außer bei „kein Stil“).
Ja, ein Fall für die jeweiligen Bugtracker.
Naja, als so ernst hatte ich das noch nicht eingestuft. Aber im Prinzip hast du Recht. AFAIK ist Firefox aber leider nicht der einzige Browser, der derlei Einstellungen schnell mal vergisst - auch Opera ist in diesem Punkt vergesslich.
Naja, wie für so vieles gibt's auch für dieses Problem eine Erweiterung ;-)
Aber auch bei der JavaScript-Lösung müsste die ausgewählte Stylesheet-Option beim Link auf andere Seiten (derselben Site) als Parameter übergeben werden.
Entweder so, oder als Cookie. Beides sind mMn akzeptable Lösungen.
mfg. Daniel
Hello out there!
Aber auch bei der JavaScript-Lösung müsste die ausgewählte Stylesheet-Option beim Link auf andere Seiten (derselben Site) als Parameter übergeben werden.
Entweder so, oder als Cookie.
Sagte ich, den Parameter als Query an den URI hängen? Nein! ;-)
(Hatte ich aber erst im Sinn; hinterher fiel mir auch noch ein, dass Cookies dafür wie geschaffen sind.)
Beides sind mMn akzeptable Lösungen.
Ich würd Cookies vorziehen. Wenn Bob von Alice den URI 'http://example.net/?stylesheet=bar' mitgeteilt bekommt, Bob aber lieber erstmal den vom Webseitenautor vorgesehenen Default-Stil haben möchte ...
Und wer keine Cookies akzeptiert, der möchte keine Gimmicks, die der Webseitenautor anbietet.
See ya up the road,
Gunnar
PS: Andererseits: Wenn Alice aber Bob nun sagen will: Schau dir die Seite mal in diesem Stil an ...
Hallo Daniel.
mit Click auf Ansicht > Webseiten-Stil*, wenn es als <http://de.selfhtml.org/html/kopfdaten/beziehungen.htm#quellen@title=alternatives Stylesheet> eingebunden wurde:
Wenn der Browser sich die Einstellung merken könnte, wäre das eine klasse Option.
Konqueror ist der einzige mir bekannte Browser, der dies tut. (Safari verfügt AFAIR nicht über solche eine Option.)
Einen schönen Freitag noch.
Gruß, Mathias