Tim: animated gifs unter IE

Hallo,
ich programmiere gerade eine Seite in der ich ein animiertes gif
als Ladevorgang einbauen möchte.
Arbeite hier mit einem Struts Framework.

Gebe mal den Quelltext durch.

HTML_Seite:

<style type="text/css">
    #loadLayer{
    position:absolute;top:275px; left:400px; width: 350px;
    height : 150px;color:#06305C; background-color:white;
    border:2px solid #06305C; font-size:13pt;
    font-family:Verdana;
    padding:6em; z-index: 10; visibility: hidden;
    }
  </style>

<div id="loadLayer" name="loadLayer">
<html:img page="images/Layer.GIF" />
</div>

JS.Seite:
function load(){
      document.all.loadLayer.style.visibility = "visible";}

Die Funktion wird durch ein onclick="load();" aufgerufen.

Achja wenn ich anstelle des html:img einfach einen Text einsetze dann funktioniert es.

Kann mir da einer bitte weiterhelfen???

SU

  1. Tag Tim.

    <div id="loadLayer" name="loadLayer">
    <html:img page="images/Layer.GIF" />
    </div>
    [...]
    Achja wenn ich anstelle des html:img einfach einen Text einsetze dann funktioniert es.

    Warum bindest du das Bild nicht so ein, wie es sein soll (siehe Grafiken einbinden)? Warum greifst du auf den Layer nicht mittels getElementById zu, damit alle etwas davon haben, nicht nur IE-Nutzer? Und vielleicht (ich kenne das Konzept der Seite nicht) solltest du besser display verwenden, sonst bekommen User ohne Javascript eine große leere Fläche zu sehen. Ach, eines noch, warum machst du das Ganze überhaupt, sollen User ohne JS nicht in den Genuss deines GIFs kommen?

    Siechfred

    1. Hallo,
      danke fürs schnelle Antworten.

      Also, ich habe versucht das Bild so einzubinden wie es in der selfHtml steht, doch ich kriege jedesmal nur dieses rote X.
      Das mit dem getelementbyid habe ich nicht so recht verstanden, vergebe ich einfach dem Container in dem das Bild sein soll eine Id und habe dann in der js Datei den Aufruf zum Container hin???
      Das mit dem UserZugriff ohne jS ist schon okay, ist für einen Kunden der darauf besteht, das nur User mit JS drauf zugreifen können. Verstehe ich zwar auch nicht aber so will er es.
      Und das mit dem display klappt leider auch nicht.

      SU

      Tag Tim.

      <div id="loadLayer" name="loadLayer">
      <html:img page="images/Layer.GIF" />
      </div>
      [...]
      Achja wenn ich anstelle des html:img einfach einen Text einsetze dann funktioniert es.

      Warum bindest du das Bild nicht so ein, wie es sein soll (siehe Grafiken einbinden)? Warum greifst du auf den Layer nicht mittels getElementById zu, damit alle etwas davon haben, nicht nur IE-Nutzer? Und vielleicht (ich kenne das Konzept der Seite nicht) solltest du besser display verwenden, sonst bekommen User ohne Javascript eine große leere Fläche zu sehen. Ach, eines noch, warum machst du das Ganze überhaupt, sollen User ohne JS nicht in den Genuss deines GIFs kommen?

      Siechfred

  2. <div id="loadLayer" name="loadLayer">
    <html:img page="images/Layer.GIF" />
    </div>

    Bist du sicher das das bild genau so heißt?
    Du solltest dir angwöhnen eine durchgängige Schreibweise zu verwenden (sinnvoll ist es alles klein zu schreiben)

    Struppi.