Tobias Michael: Externe CSS-Datei mittels Java-Script einbinden

Hallo Leute,
ich habe erstelle gerade ein Intranet. Die Nutzer verwenden Monitore mit verschiedenen Auflösungen. Mittels mehrerer CSS-Dateien will ich auf diese verschiedenen Bildschirmauflösungen reagieren. Dazu habe ich in den Dateikopf folgendes Java-Script geschrieben:

<script language="JavaScript">
if(screen.width <= 800)
document.writeln('<link rel="stylesheet" type="text/css" href="../css/css_0800_gruen.css">');
if((screen.width > 800) && (screen.width <= 1024))
document.writeln('<link rel="stylesheet" type="text/css" href="../css/css_1024_gruen.css">');
if(screen.width > 1024)
document.writeln('<link rel="stylesheet" type="text/css" href="../css/css_1280_gruen.css">');
</script>

Ich habe versucht, dieses Script in eine externe Datei auszulagern.

Script-Datei:

function auswahl_css();
{
if(screen.width <= 800)
document.writeln('<link rel="stylesheet" type="text/css" href="../css/css_0800_gruen.css">');
if((screen.width > 800) && (screen.width <= 1024))
document.writeln('<link rel="stylesheet" type="text/css" href="../css/css_1024_gruen.css">');
if(screen.width > 1024)
document.writeln('<link rel="stylesheet" type="text/css" href="../css/css_1280_gruen.css">');
}

In der HTML-Datei habe ich dann im Dateikopf folgenden Verweis angebracht:

<script language="javascript" src="../scripts/auswahl_css.js"></script>

Allerdings ist es mir nicht mehr gelungen, das Script zur Ausführung zu bringen. Ich denke, es müßte beim Laden der Datei ausgeführt werden. Die Methode "onLoad" hat aber nichts gebracht.
Kann mir jemand weiterhelfen? Ist dieses Vorgehen überhaupt realisierbar?

Vielen Dank für Eure Hilfe.

Viele Grüße
Tobias Michael

PS: Für die Verwaltung meiner Seiten verwende ich FrontPage. Wenn ich dateien kopiere oder verschiebe paßt FrontPage die Links automatisch an, aber nicht wenn sie in einem Java-Script stehen.

  1. Hallo Tobias,

    Allerdings ist es mir nicht mehr gelungen, das Script zur Ausführung zu bringen. Ich denke, es müßte beim Laden der Datei ausgeführt werden.

    Der Code des Scripts wird nicht zur Ausfuehrung gebracht, weil er sich in einer Funktion befindet, die aber offensichtlich nie aufgerufen wird. Schmeiss doch einfach die Funktion raus. Inhalt der js-Datei:

    if(screen.width <= 800)
    document.writeln('<link rel="stylesheet" type="text/css" href="../css/css_0800_gruen.css">');
    if((screen.width > 800) && (screen.width <= 1024))
    document.writeln('<link rel="stylesheet" type="text/css" href="../css/css_1024_gruen.css">');
    if(screen.width > 1024)
    document.writeln('<link rel="stylesheet" type="text/css" href="../css/css_1280_gruen.css">');

    Und sonst nix.

    viele Gruesse
      Stefan Muenz

  2. Hi

    entweder machs so wie Stefan sagte , wenn Netscape damit
    Problem hat (war bei mir zumindest hin und wieder so )
    dann versuch folgendes :

    <script language="javascript" src="../scripts/auswahl_css.js"></script>
    <script language="JavaScript">
    function auswahl_css();
    </script>

    so funktionierts bei mir zumindest inwandfrei :)

    gruss
    jens

    1. Ups.. der Fehlerteufel beim Cut&Paste hat mal wieder
      zugeschlagen

      <script language="javascript" src="../scripts/auswahl_css.js"></script>
      <script language="JavaScript">
      auswahl_css();
      </script>

      so müsste es natürlich richtig heissen.

  3. Hallo Stefan, hallo Jens,
    ich danke Euch für Eure Hilfe.
    JavaScript ist noch nicht so mein Ding. Ich lerne noch.

    Ich wünsche Euch und allen anderen Forumteilnehmern alles Gute im neuen Jahr.

    Viele Grüße
    Tobias Michael