Wagner Florian: OnClick in Firefox

Hallo!

Ich habe ein Problem. Ich habe eine Anweisung geschrieben, die ein Bild bei drüberfahren oder Klick ausstauschen soll. Es funktioniert in Opera, Safari, der Vorschau des Editor und wahrscheinlich auch im IE (IE hab ich nicht).
Leider aber funktioniert das Ganze nicht im Firefox.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title>Untitled</title>
<script language="JavaScript" type="text/javascript">
<!--
var Flag = 0;
function Farbwechsel( Farbe ) {
if ( Flag == 0 ) {
window.Ampel.src = Farbe;
}
}
function Wechselende( Farbe ) {
window.Ampel.src = Farbe;
Flag=1;
}
function Wechselstart( Farbe ) {
window.Ampel.src = Farbe;
Flag=0;
}
// -->
</script>
</head>
<body>
<img id="Ampel" src="susucm.jpg" onMouseOver="Farbwechsel('deckblatt.jpg')" onMouseOut="Farbwechsel('susucm.jpg')" onclick="Wechselende('macbook.jpg')" onDblClick="Wechselstart('susucm.jpg')">
</body>
</html>

Kennt jemand Abhilfe?

  1. Hi,

    Leider aber funktioniert das Ganze nicht im Firefox.

    "funktioniert nicht" funktioniert nicht. Fehlerbeschreibung, bitte. Darüber hinaus:

    window.Ampel.src = Farbe;

    Wo hast Du window.Ampel erzeugt?

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. "funktioniert nicht" funktioniert nicht. Fehlerbeschreibung

      In allen Browsern kommt bei Mausüberfahrt das Deckblatt und bei Mausklick ein Bild. Bei Doppelklick komm ich wieder auf das Anfangsbild.
      Nur eben in Firefox seh ich nur das Anfangsbild. Keine Action.

      window.Ampel.src = Farbe;

      Wo hast Du window.Ampel erzeugt?

      Ganz ehrlich: Der Code is ein bisschen zusammengeschustert. Ich hab wenig Ahnung mit Javascript und hab den Code aus einem Beispiel herauskopiert.
      Ich weiß nur: Es funktioniert im Firefox nicht, sonst überall.

      1. Hi,

        Nur eben in Firefox seh ich nur das Anfangsbild. Keine Action.

        und keine Fehlermeldung? Keine der Debug-Ausgaben, die Du vorgenommen hast, wird gezeigt? Dann ist die Sache klar: Du hast JavaScript deaktiviert.

        window.Ampel.src = Farbe;
        Wo hast Du window.Ampel erzeugt?
        Ganz ehrlich: Der Code is ein bisschen zusammengeschustert. Ich hab wenig Ahnung mit Javascript und hab den Code aus einem Beispiel herauskopiert.

        Heidenei. Okay, dann verrate ich es Dir: Du hast window.Ampel *nirgendwo* erzeugt. Es existiert nicht. Außer in Browsern, die glauben, man könne willkürlich irgendwelche Dinge aus allen möglichen Quellen in globale Scopes schmeißen, beispielsweise aus IDs in HTML-Dokumenten. Zum Glück beherrschen aber selbst diese Browser die regulären Zugriffsmethoden, die insbesondere in DOM bestehen.

        Erhöhe also Deine Ahnung von JavaScript im betreffenden Bereich.

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
        1. Erhöhe also Deine Ahnung von JavaScript im betreffenden Bereich.

          Das nehm ich mir zu Herzen.

          Danke nochmals.

          1. Hi,

            Das nehm ich mir zu Herzen.

            Am kompatibelsten ist der Zugriff via images, sofern das IMG ein NAME-Attribut hat.

            Ansonsten halt via getElementById() ...

            Gruß, Cybaer

            --
            Man kann doch sehr leicht jenen tugendhaften Menschen begegnen, (...) die eine Art "unkrümmbaren Zeigefinger" besitzen, der ständig den kalten Wind des Rechthabens ausströmt. (Wolfgang Huber, Bischof)
            Die Tugend jagt nicht den Teufel, sondern den Sündhaften. Damit wird sie zum Terror. (Hans-Ulrich Jörges, Journalist)