Probleme mit Firefox -> Div-Layer

Diskutiere und helfe bei Probleme mit Firefox -> Div-Layer im Bereich Webmaster Support, Scripts, etc im SysProfile Forum bei einer Lösung; Hallo! Ich bin für meine Arbeit an einem Onlineshop am arbeiten, möchte den Kunden auch die Möglichkeit bieten können, per MouseOver bei einem Bild... Dieses Thema im Forum "Webmaster Support, Scripts, etc" wurde erstellt von Spacerat, 9. März 2007.

  1. Spacerat
    Spacerat ٩(̾●̮̮̃̾•̃̾)۶ /dev/null
    Registriert seit:
    25. Dezember 2006
    Beiträge:
    8.597
    Zustimmungen:
    196
    Name:
    Christian
    1. SysProfile:
    11226
    Steam-ID:
    Spacerat2911

    Hallo!

    Ich bin für meine Arbeit an einem Onlineshop am arbeiten, möchte den Kunden auch die Möglichkeit bieten können, per MouseOver bei einem Bild ein kleines Layer angezeigt zu bekommen, welches die Beschreibung enthält. Funktioniert im IE super, im FF allerdings nicht (da is was faul, ich weiß).

    Mal hier das JavaScript:

    Code:
    <script type="text/javascript">
     descarray = new Array(
     "Beschreibung 1",
     "Beschreibung 2",
     "Beschreibung 3",
     "Beschreibung 4"
     );
     overdiv="0";
     function popLayer(a)
     {
      if(!descarray[a])
      {
       descarray[a]="<font color=red>Beschreibung fehlt</font>";
      }
      pad="0"; bord="0 bordercolor=black";
      desc = "<table cellspacing=0 cellpadding="+pad+" border="+bord+" bgcolor='#000000'><tr><td>\n"
              +"<table cellspacing=0 cellpadding=10 border=0 width=100%><tr><td bgcolor=#017CC2><p align=\"center\" style=\"font-size: 12; color: white\">\n"
              +descarray[a]
              +"</p>\n</td></tr></table>\n"
              +"</td></tr></table>";
      document.getElementById("object1").innerHTML=desc;
                document.getElementById("object1").style.position = "absolute";
      document.getElementById("object1").style.left=x+15;
      document.getElementById("object1").style.top=y-5;
      return desc;
     }
     function hideLayer()
     {
      if (overdiv == "0")
      {
       document.getElementById("object1").style.top="-500";
           }
     }
     var isNav = (navigator.appName.indexOf("Netscape") != -1);
     function handlerMM(e)
     {
      x = (e) ? e.pageX : event.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
      y = (e) ? e.pageY : event.clientY + document.body.scrollTop + document.documentElement.scrollTop;
     }
     if (document.layers) alert("1");
     document.onmousemove = handlerMM;
          if (document.all){
             // Microsoft-Modell
          } else if (typeof(document.getElementById)=="function") {
             // wenn Netscape-Modell
             for (var i=1; i<=document.adminForm.zahlungsart.length; i++){
                name = ("zahlung"+i);
                document.getElementById("zahlung"+i).style.visibility ="hidden";
                document.getElementById("zahlung"+i).style.position = "absolute";
                document.getElementById("zahlung"+i).style.display = "none";
              }
          } else {
             // wenn Modell nicht unterstützt
             alert("Ihr Browser wird nicht unterstützt.");
          }
    </script>
    und der DIV:

    Code:
    <div id="object1" style="position:absolute; background-color:FFFFDD; color:black; border-color:black;border-width:20; visibility:show; left:25px; top:-100px; z-index:+1" onmouseover="overdiv=1;"  onmouseout="overdiv=0; setTimeout('hideLayer()',1)"></div>

    Im IE bekomme ich ein wunderbares Layer angezeigt, welches sich auch in der Höhe und Breite anpasst, der FF zeigt mir gar nichts an.
    Hier mal ein Beispiel (es fehlen Background, etc):
    http://sunmega.f2k-hosting.net/hk.html
    Wenn ich das nicht schnell bräuchte würd ich gar nicht nachfragen, es eilt nur sehr :(

    Ich danke euch schon Mal im Vorraus für eure Hilfe!

    MfG
    SynN
     
  2. Spacerat
    Spacerat ٩(̾●̮̮̃̾•̃̾)۶ /dev/null
    Themenstarter
    Registriert seit:
    25. Dezember 2006
    Beiträge:
    8.597
    Zustimmungen:
    196
    Name:
    Christian
    1. SysProfile:
    11226
    Steam-ID:
    Spacerat2911

    Bisher konnte mir also leider niemand helfen. Ich weiß aber nun, dass der Fehler beim onmousemove() auftritt, d.h. dass der DIV-Tag sonst soweit ok ist. Der DIV-Tag hat eine Position von -100, die wird beim mousemove nicht geändert.
    Hat jemand ne Ahnung wie man das ändern kann?

    Code:
    function handlerMM(e)
     {
      x = (e) ? e.pageX : event.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
      y = (e) ? e.pageY : event.clientY + document.body.scrollTop + document.documentElement.scrollTop;
     }
     document.onmousemove = handlerMM;
    Der bereinigte Code des Javascript sieht insgesamt so aus:

    Code:
    <script type="text/javascript">
     descarray = new Array(
     "Beschreibung 1",
     "Beschreibung 2",
     "Beschreibung 3",
     "Beschreibung 4"
     );
     var overdiv="0";
     function popLayer(a)
     {
      if(!descarray[a])
      {
       descarray[a]="<font color=red>Beschreibung fehlt</font>";
      }
      pad="0"; bord="0 bordercolor=black";
      desc = "<table cellspacing=0 cellpadding="+pad+" border="+bord+" bgcolor='#000000'><tr><td>\n"
              +"<table cellspacing=0 cellpadding=10 border=0 width=100%><tr><td bgcolor=#017CC2><p align=\"center\" style=\"font-size: 12; color: white\">\n"
              +descarray[a]
              +"</p>\n</td></tr></table>\n"
              +"</td></tr></table>";
      document.getElementById("object1").innerHTML=desc;
                document.getElementById("object1").style.position = "absolute";
      document.getElementById("object1").style.left=x+15;
      document.getElementById("object1").style.top=y-5;
     }
     function hideLayer()
     {
      if (overdiv == "0")
      {
       document.getElementById("object1").style.top="-500";
           }
     }
     var isNav = (navigator.appName.indexOf("Netscape") != -1);
     function handlerMM()
     {
      x = event.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
      y = event.clientY + document.body.scrollTop + document.documentElement.scrollTop;
     }
     document.onmousemove = handlerMM;
    </script>
    und nochmal der DIV:

    Code:
    <div id="object1" style="position:absolute; background-color:FFFFDD; color:black; border-color:black;border-width:20; visibility:show; left:25px; top:-100px; z-index:+1" onmouseover="overdiv=1;"  onmouseout="overdiv=0; setTimeout('hideLayer()',1)"></div>
    Wie gesagt es scheint am document.onmousemove zu liegen...
    bitte helft mir ;_;
     
  3. alex
    alex killed in action
    Registriert seit:
    30. Dezember 2006
    Beiträge:
    8.187
    Zustimmungen:
    282
    1. SysProfile:
    63644
    2. SysProfile:
    18897
    40873
    Hi SynN,

    probier's mal mit allen Browsern aus, die die Gecko-Engine zur Darstellung nutzen
    (d.h. Firefox, Mozilla Browser, K-Meleon, UBrowser, Netscape Navigator 8 usw.)

    wenn's bei allen nicht geht, dann liegt's halt irgendwie an der art, wie die gecko-
    engine die seiten darstellt

    besser kann ich dir leider auch nicht helfen, da ich fast keine erfahrung mit
    javascript hab ;)

    Gruß
    alexirsi
     
  4. Kakerlake
    Kakerlake Grünschnabel
    Registriert seit:
    25. April 2007
    Beiträge:
    1
    Zustimmungen:
    0

    Du wirsts vieleicht nicht glauben aber ein kleiner Blick in die Fehlerkonsole hätte Wunder gewirkt.
    Code:
    document.getElementById("object1").style.left=x+15;
    document.getElementById("object1").style.top=y-5;[FONT=monospace]
    [/FONT]
    Diese Zeilen sind völlig falsch, das der IE die interpretieren kann ist pure Glückssache.

    Wie du hier anscheinend erkannt hast
    Code:
    document.getElementById("object1").style.top="-500";
    ist die Position kein numerischer Wert sondern ein STRING. Allerdings muss dieser String mit den Zeichen "px", "pt" oder "em" enden da es sich um eine Höhenangabe handelt.

    Somit sollte dan folgender Code funktionieren:
    Code:
    document.getElementById("object1").style.left= (x+15)+"px";
    document.getElementById("object1").style.top= (y-5)+"px";[FONT=monospace]
    [/FONT]
    Und da du ansonsten gleich mit dem nächsten Fehler ankommen wirst...
    Code:
    document.getElementById("object1").style.top="-500px";
     
    #4 Kakerlake, 25. April 2007
Thema:

Probleme mit Firefox -> Div-Layer

Die Seite wird geladen...

Probleme mit Firefox -> Div-Layer - Similar Threads - Probleme Firefox Div

Forum Datum

IKEA Smart Home: Neue Matter-Hardware macht bei einigen wohl Probleme

IKEA Smart Home: Neue Matter-Hardware macht bei einigen wohl Probleme: IKEA Smart Home: Neue Matter-Hardware macht bei einigen wohl Probleme Programmierbare Buttons, Leuchtmittel, Steckdosen sowie Temperatur- und Bewegungssensoren, die echt fair bepreist sind.. ....
User-Neuigkeiten Donnerstag um 11:43 Uhr

Firefox 147.0.3 veröffentlicht: Bugfixes für Windows und Linux

Firefox 147.0.3 veröffentlicht: Bugfixes für Windows und Linux: Firefox 147.0.3 veröffentlicht: Bugfixes für Windows und Linux Mit Version 147.0.3 beheben die Entwickler diverse Fehler und schrauben minimal an der Interoperabilität bezüglich CSS Anchor...
User-Neuigkeiten Mittwoch um 18:23 Uhr

Firefox bekommt KI-Schalter: Mozilla setzt auf Wahlfreiheit

Firefox bekommt KI-Schalter: Mozilla setzt auf Wahlfreiheit: Firefox bekommt KI-Schalter: Mozilla setzt auf Wahlfreiheit Die einen wollen die Features sofort nutzen, die anderen am liebsten gar nichts davon sehen. Genau an dieser Stelle setzt Mozilla jetzt...
User-Neuigkeiten 3. Februar 2026

Firefox 147.0.2: Mozilla verteilt Update mit anpassbaren Shortcuts und Fehlerbehebungen

Firefox 147.0.2: Mozilla verteilt Update mit anpassbaren Shortcuts und Fehlerbehebungen: Firefox 147.0.2: Mozilla verteilt Update mit anpassbaren Shortcuts und Fehlerbehebungen . . Firefox 147.0.2: Mozilla verteilt Update mit anpassbaren Shortcuts und Fehlerbehebungen
User-Neuigkeiten 27. Januar 2026

Gmail: Probleme mit der Sortierung und fehlende Spam-Checks

Gmail: Probleme mit der Sortierung und fehlende Spam-Checks: Gmail: Probleme mit der Sortierung und fehlende Spam-Checks Zahlreiche Nutzer berichten darüber, dass E-Mails, die normalerweise sauber in die Kategorien wie Werbung oder Updates wegsortiert...
User-Neuigkeiten 24. Januar 2026

Thunderbird für Android: Beta 16.0b4 fixt Probleme mit Microsoft-Konten

Thunderbird für Android: Beta 16.0b4 fixt Probleme mit Microsoft-Konten: Thunderbird für Android: Beta 16.0b4 fixt Probleme mit Microsoft-Konten Aktuell haben die Entwickler eine neue Vorabversion veröffentlicht, die Version 16.0b4 steht zum Testen bereit. Der Blick...
User-Neuigkeiten 21. Januar 2026

Windows: Außerplanmäßiges Update behebt Probleme des Januar-Patches

Windows: Außerplanmäßiges Update behebt Probleme des Januar-Patches: Windows: Außerplanmäßiges Update behebt Probleme des Januar-Patches Das vorangegangene Sicherheitsupdate vom Januar hatte bei einigen Nutzern für Kopfschmerzen gesorgt. Konkret traten...
User-Neuigkeiten 18. Januar 2026

Firefox 147.0.1: Kleines Update behebt Probleme mit ChatGPT und mehr

Firefox 147.0.1: Kleines Update behebt Probleme mit ChatGPT und mehr: Firefox 147.0.1: Kleines Update behebt Probleme mit ChatGPT und mehr Version 147.0.1 wird seit dem 16. Januar 2026 verteilt und kümmert sich um ein paar Fehler, die sich in die Vorgängerversion...
User-Neuigkeiten 17. Januar 2026

Firefox zieht den Stecker: Die alte Seitenleiste verschwindet 2026

Firefox zieht den Stecker: Die alte Seitenleiste verschwindet 2026: Firefox zieht den Stecker: Die alte Seitenleiste verschwindet 2026 Vor über einem Jahr wurde bereits eine aktualisierte Variante eingeführt, die Lesezeichen, Verlauf, Tabs von anderen Geräten und...
User-Neuigkeiten 14. Januar 2026

Firefox 147 ist da: Das ist neu im Mozilla-Browser

Firefox 147 ist da: Das ist neu im Mozilla-Browser: Firefox 147 ist da: Das ist neu im Mozilla-Browser Firefox 147.0 steht ab sofort zum Download bereit und bringt einige Neuerungen und Verbesserungen unter der Haube mit. Wer den Browser nutzt,...
User-Neuigkeiten 13. Januar 2026

Hama Home-App: App-Update sorgt für Probleme

Hama Home-App: App-Update sorgt für Probleme: Hama Home-App: App-Update sorgt für Probleme Wer seine Geräte gerne per Sprache steuert, schaut aktuell wohl in die Röhre. Ein Update der App hat offenbar unter anderem die Integration von...
User-Neuigkeiten 8. Januar 2026
Probleme mit Firefox -> Div-Layer solved
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden