CSS-Datei in Abhängigkeit von Javascript laden
Mike28
- javascript
0 Ingo Turski0 Jörg Peschke0 Mike280 Mike28
Hallo Zusammen
Folgende Situation:
Für den Microsoft Internet Explorer soll eine externe CSS-Datei (iejs.css) im Head einer XHTML 1.0 -Datei geladen werden, aber nur wenn Javascript im Browser aktiviert ist.
Wenn Javascript deaktiviert ist soll eine andere CSS-Datei (ienjs.css) geladen werden.
Ersteres ist ja einfach:
<!--[if lt IE 7]>
<script type="text/javascript">
/* <![CDATA[ */
document.write('<link rel="stylesheet" type="text/css" media="screen" href="iejs.css">');
/* ]]> */
</script>
<![endif]-->
Zweiteres ist leider nicht so einfach. "noscript" gibt es im Head-Bereich ja nicht. Die "ienjs.css" soll aber nur geladen werden wenn Javascript deaktiviert ist!
Hat da wer einen Tip wie ich dies umsetzen könnte?
Danke, Mike
Hi,
Ersteres ist ja einfach:
<!--[if lt IE 7]>
<script type="text/javascript">
/* <![CDATA[ */
document.write('<link rel="stylesheet" type="text/css" media="screen" href="iejs.css">');
/* ]]> */
</script>
<![endif]-->
zweiteres auch: document.getElementsByTagName("style")[0].disabled = true;
freundliche Grüße
Ingo
Hi,
Du könntest auch das Nicht-IE-CSS zuerst laden und es dann vom IE-CSS überschreiben lassen - das Nicht-IE-CSS wird dann auf jeden Fall geladen, hat der User einen IE und JavaScript aktiviert, wird es aber sogleich wieder überschrieben.
Hat der User kein JavaScript, wird der Script-Teil nicht ausgeführt und folglich auch kein Stylesheet geladen, welches das andere überschreibt.
Grüße,
Jörg
zweiteres auch: document.getElementsByTagName("style")[0].disabled = true;
- sofern Du andere CSS für den IE als erstes eingebunden hast.
Hi Ingo
Danke für die schnelle Antwort - aber irgendwie check ich das nicht was Du geschrieben hast. Sorry, bin in Javascript nicht wirklich fit...
Wo/wie schreib ich das von Dir geschriebene hin?
Danke, Mike
zweiteres auch: document.getElementsByTagName("style")[0].disabled = true;
- sofern Du andere CSS für den IE als erstes eingebunden hast.
freundliche Grüße
Ingo
Aaaah, danke, habs gecheckt:
<meta http-equiv="content-style-type" content="text/css" />
<link rel="stylesheet" type="text/css" media="screen" href="ienjsw.css">
<script type="text/javascript">
/* <![CDATA[ */
document.write('<link rel="stylesheet" type="text/css" media="screen" href="iejs.css">');
document.getElementsByTagName("link")[0].disabled = true;
/* ]]> */
</script>
:-)))
Mike