Marc: Multi-on-mouseover

Moin,

ich kann zwar eine Grafik per 'onmouseover' sich ändern lassen, aber nun bräuchte ich eine Mehrfachänderung. Also ich habe eine Matrix mit sagen wir 10x10 Grafiken. Wenn ich nun über eine Grafik mit der Maus fahre, soll sich nicht nur diese Grafik ändern, sondern z.b. auch die drei angrenzenden, so das sich ein Block von 2x2 Grafiken ändert, bei dem der Mauszeiger auf dem links oberen ist. Genauso möchte ich auch einen Block von 2x3 oder 3x2 ändern können. Je nach Festlegung... Ist das irgendwie möglich? Wenn ja, kann mir da vielleicht einer helfen? Darüber wäre ich sehr dankbar...

Grüsse

Marc

  1. N'Abend,

    Ist das irgendwie möglich? Wenn ja, kann mir da vielleicht einer helfen? Darüber wäre ich sehr dankbar...

    Pack die einzelnen Anweisungen um die Grafiken zu ändern in eine Funktion (schau Dir dazu mal die Praxis-Beispiele in SelfHTML an) und rufe per onMouseOver nur die entsprechende Funktion auf. Du kannst natürlich auch mehrere Anweisungen in onMouseOver unterbringen, die müssen dann nur per Simikolon getrennt werden. Übersichtlicher (in meinen Augen) ist aber die erste Variante.

    onMouseOver="anweisung1; anweisung2; ..."

    Viele Grüße...

    Alex :)

    1. Hallo,

      es ist ganz einfach mit Arrays :

      Feldbereich=4,Bilderanzahl=10;
      onmouseoverarray=new Array(Feldbereich,Bilderanzahl);
      for(f=1;f<=Feldbereich,f++]{
      for(i=1;i<=Bilderanzahl;i++){
      onmouseoverarray[f][i]=new Image(10,10);
      onmouseoverarray[f][i].src="Bildover"+j+i+".jpg"; //BIlder nach Feldbereich und Anzahl benennen
      }
      }

      onmouseoutarray=new Array(Feldbereich,Bilderanzahl);
      for(f=1;f<=Feldbereich,f++]{
      for(i=1;i<=Bilderanzahl;i++){
      onmouseoutarray[f][i]=new Image(10,10);
      onmouseoutarray[f][i].src="Bildout"+j+i+".jpg"; //BIlder nach Feldbereich und Anzahl benennen
      }
      }

      function overpics(Feldbereich){
      for(i=1;i<=Bilderanzahl;i++){
      if(document.images)
      document.images[i+Feldbereich].src=onmouseoverarray[i+Feldbereich].src
      }

      function outpics(Feldbereich){
      for(i=1;i<=Bilderanzahl;i++){
      if(document.images)
      document.images[i+Feldbereich].src=onmouseoutarray[i+Feldbereich].src
      }

      onmouseout="outpics(4)" onmouseout="overpics(4)"