Problem mit einem Javascript

  • Moin

    ich habe ein Problem:
    Auf einer Website steht folgendes im Quelltext:

    ...<label onmouseover="this.style.cursor='hand'" onmouseout="this.style.cursor='auto'" onclick='javascript:window.clipboardData.setData("Text","blablabla"); alert("Der Text wurde in die Zwischenablage kopiert. Er kann nun durch das drücken von STRG+V eingefügt werden.");'>blablabla</label>

    Beim IE:
    Wenn ich mit der Maus darüberfahre zeigt es den Handcursor an (also wie bei einem Link) und beim Draufklicken kommt ein Fenster: Der Text wurde in die Zwischenablage kopiert. Er kann nun durch das drücken von STRG+V eingefügt werden.
    blablabla ist dann in meiner Zwischenablage!

    Bei FireFox:
    Wenn ich darüberfahre kommt nur dieser "Markieren" Cursor (also, als ob ich über ganz normalen Text drüberfahre). Anklicken kann man den Link nicht, weil es wie ein Text behandelt wird.


    Frage: Kann ich etwas einstellen, damit das Javascript funktioniert?

    Thx
    d4v3

  • Ein ähnliches Problem wie D4V3 beschrieben hat, habe ich jetzt auch.

    Und zwar bin ich erst gestern Nacht auf den Firefox umgestiegen und musste feststellen, das zwei grundlegende Funktionen auf meiner Seite mit dem Firefox nicht funktionieren.

    Dabei handelt es sich um das onmouseover.
    Dies setze ich auf zwei Seiten meiner Site ein.

    Einmal zum anzeigen von Party-Informationen hier:
    http://www.daddlers-paradise.de/index.php?ziel…icht&auswahl=20

    und einmal um sich einen Sitzplatz zu wählen hier:
    http://www.daddlers-paradise.de/index.php?ziel=Sitzplan&auswahl=20

    Der Code sieht so aus:

    Code
    <div style="position:relative; width:560px; margin:auto;">
    <img src="http://www.daddlers-paradise.de/grafik/deutschland6.gif" width="560" height="670" alt="" />
    <map id="Dellien">
    <area shape="circle" coords="8,8,8" href="http://www.daddlers-paradise.de/index.php?ziel=News&auswahl=20" alt="" onmouseover="Partyinfo('03.09.2004', '05.09.2004', 'Dellien','48','32','13',1);" onmouseout="Partyinfo('','','','','','',0);" />
    </map>
    <img style="position:absolute; left:248px; top:161px;" src="http://www.daddlers-paradise.de/grafik/iconparty3.gif" width="17" height="17" usemap="#Dellien" alt="" />
    </div>

    Das Javascript liegt in einer extra Datei und müsste eigendlich unwichtig sein. :wink:

    Im IE6.0 und dem Opera 7.23 sieht alles normal aus. Beim hoovern wird eine mobile Tabelle angezeigt und beim Klicken wird die Party-Seite erreicht, bzw. wird der Sitzplatz reserviert.

    Mit dem Firefox0.9.1 und dem NN7.1 passiert gar nix. Weder die mobile Tabelle wird angezeigt, noch kann ich den Link betätigen.
    Auch das ändern zum

    Code
    onclick="location.href='http://www.daddlers-paradise.de/index.php?ziel=News&auswahl=20';"

    erbrachte keinen Erfolg.

    Kann der Firefox das nicht, oder hab ich etwas falsch eingestellt?

  • Zitat

    <map id="Dellien">


    versuch mal <map name="Dellien"> ... nach w3c wird nicht ID sondern Name für die Map gebenutzt.

    aber:

    Zitat

    document.all.Infofenster.innerHTML = tabellegesamt;

    document.all kennt Firefox nicht (Ist IE-DOM-Notaion). Der wird wohl spätestens da aufhören das Script auszuführen, denk ich mal.

  • Hallo bugcatcher

    Der Fehler im Javascript kann nicht der Fehler sein.
    Ich habe testweise mal den onmouseover und onmouseout raus genommen.
    So blieb also nurnoch der <area> mit einem Link übrig. Hat aber noch immer nicht funktioniert. Firefox scheint tatsächlich ein Problem mit <map> und <area> zu haben.

  • Ich habe den Fehler gefunden.
    Jetzt weis ich aber nicht, in wie weit ich hier richtig bin. :oops:

    Lauf xhtml gibt es das Attribut "name" nicht mehr und wird durch "id" ersetzt. So habe ich es auch in

    Code
    <map id="bezeichnung">

    gemacht.

    Der Firefox nimmt den Link im <area> aber nur, wenn in <map> das Attribut "name" vorhanden ist.

    Das ist meineserachtens ein Fehler. Jetzt weis ich aber nicht, ob ihr dafür zuständig seit, oder (nur) :wink: die Foren-Betreiber seit. :)

    Der NN7.1 macht übrigens den selben Fehler.

  • verwendest du auch
    document.getElementById
    anstatt
    document.getElementsByTagName

    wenn du ein elemnt per id bezeichnest wird es schwierig es per name zu finden ;)
    hoffe dir hilft das weiter :)

  • ich hab mir mal die partyinfo.js angeschaut.
    Das was ich meinte ist nicht der Fall.
    Wenn ich auf diesen sich drehenden Kreis klcike komme ich bei allen Browsern auf die Newsabteilung da.
    Ich tippe auf was anderes:
    if (navi1.indexOf("msie") > -1) {

    diese zeile - kommentiere die (und die entsprechende schließende klammer) mal aus. Ich denke das ist eine Browserweiche die dazuführt das der Fx ausgesperrt wird weil seine Browserkennung kein msie enthält.
    Wenn's dann nicht geht, hab ich auch keine Idee.

  • Zitat von PrinzEisenherz

    Der Firefox nimmt den Link im <area> aber nur, wenn in <map> das Attribut "name" vorhanden ist.


    War doch mein allererster Hinweis. ; )

    Zitat von PrinzEisenherz

    Der NN7.1 macht übrigens den selben Fehler.


    Netscape7.1 ist auch nur die Mozilla-Suite 1.4 mit Netscape-Logo drauf und Zusatz-AOL-Klimmbimm drin.

    Alles Gecko-Browser (Gecho heisst die Layout-Engine vom Mozilla, aber auch Netscape und Firefox). Und die render entsprechent gleich (von versionsunterschieden mal abgesehen).

    Und die Zeile mit dem document.all wird dir kein Gecko-Browser ausführen.

    Allerdings gebe ich dir recht in bezug auf id/name im vergleich html4/xhtml. Ich würde es auch für sinnvoller halten, das ID mit name gleichwertig wäre. allerdings kann man problemlos beide benutzen. <map name="lalala" id="lalala"> ... wäre ein workaround. denn name ist weiterhin erlaubt.

  • bugcatcher und xeen

    Das Firefox und NN so dicht beieinander liegen, hätte ich nicht gedacht. :)

    Jetzt weis ich erst, warum ihr dauern zum Javascript zurück kommt. :oops:
    Ich gebe zu, ich habe mich in meinem ersten Beitrag etwas unklar ausgedrückt.
    Ist aber schon witzig, dass ihr glaubt, das ich diese Zeile nicht deuten könnte.

    Code
    if (navi1.indexOf("msie") > -1) {

    :lol:

    Das Problem was ich hier ansprechen wollte war, dass selbst die Verlinkung nicht geht. Da können noch so viele Javascript schnipsel hinten liegen.
    Auch wenn ich

    Code
    onclick="location.href='http://www.daddlers-paradise.de/index.php?ziel=News&auswahl=20';"

    eingefügt hätte, müsste das Javascript doch egal sein. Schließlich steht der Javascript-Teil ja für sich alleine.

    Das der Link jetzt funktioniert, liegt in der Tat daran, wie es bugcatcher bereits in seiner letzten Nachricht geschrieben hat, weil ich "id" und "name" im <map> geschrieben habe. 8)

    bugcatcher schrieb

    Zitat

    allerdings kann man problemlos beide benutzen. <map name="lalala" id="lalala">


    Das stimmt aber nur bis xhtml1.0. Wenn ich mich nicht ganz irre, (ich finde diesen blöden Artikel jetzt nicht :oops: ) ist bei xhtml1.1 alleine schon das # im usemap="" ein Problem.
    Das war auch ein Grund, warum ich wieder auf xhtml1.0 zurückgegangen bin. Ich wollte darauf nicht verzichten. :cry: