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

Firefox: Fix auf Version 117.0.1 behebt einige Probleme

Firefox: Fix auf Version 117.0.1 behebt einige Probleme: Firefox: Fix auf Version 117.0.1 behebt einige Probleme Da es sich – der Versionssprung verrät es bereits – lediglich um eine kleine Aktualisierung handelt, wurden auch „nur“ ein paar bestehende...
User-Neuigkeiten 13. September 2023

Firefox 86.0.1 veröffentlicht: Kleinere Probleme wurden ausgebügelt

Firefox 86.0.1 veröffentlicht: Kleinere Probleme wurden ausgebügelt: Firefox 86.0.1 veröffentlicht: Kleinere Probleme wurden ausgebügelt Das heißt es lassen sich nun mehrere Videos im PiP-Modus betreiben. Wie üblich schiebt man nach einem größeren Release immer...
User-Neuigkeiten 11. März 2021

Firefox 72.0.2 veröffentlicht – behebt diverse kleine Probleme

Firefox 72.0.2 veröffentlicht – behebt diverse kleine Probleme: Firefox 72.0.2 veröffentlicht – behebt diverse kleine Probleme Den Download könnt ihr unter anderem direkt hier bekommen. So soll nun unter anderem ein Problem behoben sein, wodurch sich Dateien...
User-Neuigkeiten 20. Januar 2020

Firefox 59.0.3 soll Probleme mit Windows 10 April 2018 Update beheben

Firefox 59.0.3 soll Probleme mit Windows 10 April 2018 Update beheben: Firefox 59.0.3 soll Probleme mit Windows 10 April 2018 Update beheben Allerdings sollten dann auch gleich die Firefox-Nutzer ein Update wagen, denn die Version 59.0.3 des Browsers steht ab sofort...
User-Neuigkeiten 1. Mai 2018

Firefox: Speichertechnik IndexedDB sorgt für Probleme beim Löschen der Chronik

Firefox: Speichertechnik IndexedDB sorgt für Probleme beim Löschen der Chronik: Firefox: Speichertechnik IndexedDB sorgt für Probleme beim Löschen der Chronik Im Normalfall erwartet der Anwender, wenn er seine Chronik über die entsprechende Option löschen lässt, dass...
User-Neuigkeiten 20. September 2017

firefox probleme

firefox probleme: moin, seit 2 updates von firefox gibt es probleme wenn ich den browser öffne erscheinen plötzlich alle fenster der letzten sitzung unter extras-> einstellungen steht aber bei "Start:" Wenn firefox...
freie Fragen 14. Februar 2014

probleme mit firefox lags

probleme mit firefox lags: hallo ich ahbe derzeit ein problem mit dem rpgramm firefox. es hängt sich desöfteren für ein paar sekunden auf (keine rückmeldung), kurz darauf funktioniert der firefox wieder einwandfrei. als...
freie Fragen 31. Januar 2014

Probleme mit Google oder doch Firefox??

Probleme mit Google oder doch Firefox??: Hallo, melde mich mal wieder mit einem Problem, ist zwar nicht so gravierend aber ärgerlich. Ich benutze Firefox als Browser und Google als Suchmaschine. Gebe ich in Goggle einen Text ein, z.B.:...
freie Fragen 13. Januar 2014

Firefox-Probleme

Firefox-Probleme: Nabend und ssry, daß ich jetzt wohlmöglich ein neues Thema über Firefox eröffne, habe aber nichts brauchbares gefunden. Also habe vor einiger Zeit mein System mit Vista aufgesetzt, alles gut...
Software & Treiber 19. April 2012

WICHTIG! Probleme mit Firefox Sicherheit

WICHTIG! Probleme mit Firefox Sicherheit: Hey Leute, ich hab ein Problem. Auf jeder Seite die einen gesicherten Modus herbei rufen will, kommt eine Fehlermeldung: http://www8.pic-upload.de/24.12.11/isz246411p1.png Kann mir jemand...
Software & Treiber 24. Dezember 2011

Probleme beim Abspielen von kino.to (IE hängt sich auf, Firefox geht nicht)

Probleme beim Abspielen von kino.to (IE hängt sich auf, Firefox geht nicht): Probleme beim Abspielen von kino.to (IE hängt sich auf, Firefox geht nicht) Hallo, ich habe ein Problem, wenn ich Filme oder Serien bei kino.to anschauen will. Bei Firefox...
Computerfragen 17. Februar 2011

FireFox 3 Probleme

FireFox 3 Probleme: Hallo Leute, wenn ich emin Firefox 3 Ausmach emuss ich mich jedes mal immer bei allen Foren einloggen. Früher musst ich es nicht. Was kann man da machen?
Software & Treiber 1. Juli 2008

FireFox, Probleme mit dem SP1

FireFox, Probleme mit dem SP1: Habe ein mittelschweres problem. ;) Seit ich das SP1 für Vista (x64, Ultimate) im einsatz habe. Hängt der Firefox des öfteren mal. Dabei bleibt nicht das Programm selber hängen, sondern die...
Software & Treiber 25. März 2008
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