Script.aculo.us Opacity...

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Script.aculo.us Opacity...

    Hallo!

    Ich möchte gerne einen Fade Effekt mit Script.aculo.us realisieren. Nun kann ich ja z.B. sagen:

    new Effect.Opacity(element, {from: 0; to: 1, duration: 1});
    new Effect.Opacity(element, {from: 1; to: 0, duration: 1});

    Dabei soll das element eineblendet werden wenn man darüber fährt, und wenn man das Objekt verlässt, soll das element wieder ausgeblendet werden (das mach ich ja mit onmouseover und onmouseout).

    Ihmo tritt jedoch der Fehler auf, dass wenn das Element Opacity 0 hat, ich mit der Maus drauf fahre, es eingeblendet wird, ich mit der Mausrunterfahre, und der Blendeffekt sich z.b. bei 0.3 befindet, dass Script.aculo.us den Opacity Wert auf 1 setzt und von da aus wieder richtung 0 blendet.

    Um das zu unterbinden, habe ich mir folgendes überlegt:

    new Effect.Opacity(element, {from: element.style.opacity; to: 1, duration: 1});
    new Effect.Opacity(element, {from: element.style.opacity; to: 0, duration: 1});

    Also so, dass er beim Aufruf vom aktuellen Opacity Wert aus faded. Allerdings funktioniert so der ganze Effekt nicht mehr.

    Hat jemand von Euch eine Ahnung wie Effect.Opacity beibringen kann mit dem aktuellen Opacitywert eines Elementes zu arbeiten!?

    Danke schonmal!

  • #2
    Wenn du zu schnell wieder vom Element runtergehst, laufen noch beide Effekte, d.h. du wirst dann ein Fade-In und ein Fade-Out in Kombination sehen. Das kannst du zum Beispiel umgehen, in dem du dir den gerade laufenden Effekt wegspeicherst und dann beim Starten des zweiten Effektes über cancel stoppst.
    Einfacher ist da aber bestimmt der Einsatz einer Queue.

    Kommentar

    Lädt...
    X