stereovox: onMouseout von onClick Abhängig machen – bei Bildern?

Kann mir jemand sagen ob dies Möglich ist und einen Tipp geben wie ich es angehen sollte. Habe sowas ähnliches auf
http://forum.de.selfhtml.org/archiv/2006/11/t140295/
gefunden konnte es aber nicht auf mein Problem anpassen:

Ausgangslage: habe 2 Felder:

  • Feld A mit Farbdefinitionen zum anwählen (Rollover bzw. onMouseOver)
  • Feld B  beim "onClick" auf Feld A wird die entsprechende Farbe eingeblendet.

Problem 1:
Bei "onmouseout" beim Feld A sollte das angeclickte Bild (mit Einkauswagen) bleiben.
Wie kann ich das Lösen? habe etwas mit "if" auf "map" probiert  aber erfolglos.

Problem 2:
beim onClick beim Feld A wird das im Feld A geladen mit einem Knopf
Frage: kann ich dort einen Link machen (href) das nur nach "onClick" aktiv ist?

Um es kurz zu illustrieren habe ich es unter
http://www.bumbibear.com/boumbi/test.html

Vielen Dank für jeden Input
Grüße
Stereovox

  1. Hallo,

    Setze beim Klick einer Farbe ein Globale Variable.

    Dann prüfst du beim Mouseout ob die Variable gesetzt ist oder nicht. Ist Sie gesetzt bleibt das Bild, ist Sie nicht gesetzt verschwindet das Bild.

    Das selbe könnte mit dem Link passieren.
    Beim Klick auf den Link wird abgefragt ob die Variable gesetzt ist. Wenn ja wird der User weitergeleitet.

    Grüße!

    1. Hallo Andi

      vielen dank für en Tipp, habe sowas zusammensgestellt, funktionert aber nicht, wo liege ich denn falsch?

      Setze beim Klick einer Farbe ein Globale Variable.

      Dann prüfst du beim Mouseout ob die Variable gesetzt ist oder nicht. Ist Sie gesetzt bleibt das Bild, ist Sie nicht gesetzt verschwindet das Bild.

      __________________________
      <script type="text/javascript">
      var Farbe = new Array();
      Farbe[1] = new Image(); Farbe[1].src = "img/lieb_d_orange_buy_05.gif";
      Farbe[2] = new Image(); Farbe[2].src = "img/lieb_d_weiss_buy_05.gif";
      Farbe[3] = new Image(); Farbe[3].src = "img/lieb_d_braun_buy_05.gif";

      function FarbOrange () {var geCklikt = 1;} <!-- für onCLICK -->
      function FarbWeiss () {var geCklikt = 2;}<!-- für onCLICK -->
      function FarbBraun () {var geCklikt = 3;}<!-- für onCLICK -->

      function FarbPruefen () {<!-- für onMouseout -->
      if (var geCklikt == 1) {
        document.images.colordef.src = Farbe[1].src
      } else {
        if (var geCklikt == 2) {
        document.images.colordef.src = Farbe[2].src
        } else {
        document.images.colordef.src = Farbe[3].src
        }
      }
      }
      </script>

      Könntest Du mir sagen ob ich auf dem Holzweg bin?
      Der Anfänger bedankt sich
      Danke und Gruss
      stereovox

      1. hi,

        vielen dank für en Tipp, habe sowas zusammensgestellt, funktionert aber nicht, wo liege ich denn falsch?

        function FarbOrange () {var geCklikt = 1;} <!-- für onCLICK -->
        function FarbWeiss () {var geCklikt = 2;}<!-- für onCLICK -->
        function FarbBraun () {var geCklikt = 3;}<!-- für onCLICK -->

        Das Schlüsselwort var macht was aus einer Variablen in einer Funktion?

        Genau, eine lokale Variabel, auf die du ausserhalb der Funktion keinen Zugriff hast.

        Definiere die Variable einmal mit var am Anfang des Script-Bereiches - und greife dann in den Funktionen ohne var darauf zu.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
        1. Vielen Dank Wahsaga!

          jetzt klappts!

          Das Schlüsselwort var macht was aus einer Variablen in einer Funktion?

          Genau, eine lokale Variabel, auf die du ausserhalb der Funktion keinen Zugriff hast.

          Definiere die Variable einmal mit var am Anfang des Script-Bereiches - und greife dann in den Funktionen ohne var darauf zu.

          —————————————————————————————————————
          <script type="text/javascript">
          var geCklikt;
          var Farbe = new Image();
          Farbe[0] = new Image(); Farbe[0].src = "img/lieb_d_all_05.gif";
          Farbe[1] = new Image(); Farbe[1].src = "img/lieb_d_orange_buy_05.gif";
          Farbe[2] = new Image(); Farbe[2].src = "img/lieb_d_weiss_buy_05.gif";
          Farbe[3] = new Image(); Farbe[3].src = "img/lieb_d_braun_buy_05.gif";
          Farbe[4] = new Image(); Farbe[4].src = "img/lieb_d_hellrosa_buy_05.gif";
          Farbe[5] = new Image(); Farbe[5].src = "img/lieb_d_hellblau_buy_05.gif";

          function FarbOrange () {geCklikt = 1;}
          function FarbWeiss () {geCklikt = 2;}
          function FarbBraun () {geCklikt = 3;}
          function FarbHRosa () {geCklikt = 4;}
          function FarbHBlau () {geCklikt = 5;}

          function FarbPruefen () {
          if (geCklikt == 1) { document.images.colordef.src = Farbe[1].src }
          else {if (geCklikt == 2) {document.images.colordef.src = Farbe[2].src }
          else {if (geCklikt == 3) { document.images.colordef.src = Farbe[3].src }
          else {if (geCklikt == 4) { document.images.colordef.src = Farbe[4].src }
          else {if (geCklikt == 5) {document.images.colordef.src = Farbe[5].src }
          else { document.images.colordef.src = Farbe[0].src }}}}}}
          </script>
          —————————————————————————————————————
          oder  http://www.bumbibear.com/boumbi/test.html

          Jetzt muss ich dass mit dem Link (einkaufswagen) Lösen.
          Kann ich "map" in einer funktion unter "if" einbauen?
          Danke und Gruss
          Stereovox