Zoom bei MouseOver bzw. Out

Status
Nicht offen für weitere Antworten.

Breit

Mitglied
Hallo,
ich hab euch mal ein Beispiel gemacht wo ihr seht was ich meine! Und ei datei hängt dran. Und zwar: wenn man über da kleine Rechteck (dann ein Link) geht soll das Bild (Ball) größer werden und wenn man das Rechteck wieder verlässt soll das Bild wieder kleiner werder. Funktionerit soweit. Wenn man aber zu schnell darüber geht und es wieder verlässt und immer wieder dann müsste die eine Bewebung erst ferit ablaufen. Mit welchem Code kann ich das bewirken? Das Probelm wird sehr groß wenn man mehrere von den Links hat und von oben nach unten fährt. Vielen Dank MfG Breit
 

Anhänge

  • Zoom.zip
    5,3 KB · Aufrufe: 314
Zuletzt bearbeitet:
Hi,

indem man das Ganze nicht mit Tweening, sondern mit AS macht. Ich habe ein Beispiel für eine abgebremste und eine gleichmässige Bewegung angefügt.

Theoretisch kannst Du die Bewegung/Zoom auch weiterhin mit einer Zeitleistenanimation machen, aber das ist um einiges aufwendiger: Du musst beim MouseOver und MouseOut schauen, auf welchem Frame Du Dich im Moment befindest und diesen Wert vom Zielframe abziehen bzw. dazuaddieren. ;)

Gruß
.
 

Anhänge

  • MouseOverMouseOut.zip
    6,8 KB · Aufrufe: 509
ja ne danke ich enhm dann doch lieber die einfachere variante ist mir lieder hast du ne ahnung wwie man das ganze einfacher und übersichlicher machen kann danke mfg breit
 
Das war die einfachste Variante ... die kompliziertere wäre wie gesagt die mit Zeitleiste. ^^

Gruß

P.S.:
Bitte achte auf eine korrekte Grammatik und Rechtschreibung (inkl. Groß-/ Kleinschreibung) und eine sinnvolle,
klare Fragestellung bzw. Antwort. Mehr dazu findest Du in unserer Netiquette.
Das ist eigentlich nicht zu übersehen beim Schreiben von Beiträgen - bitte halte Dich auch daran!
.
 
ich hab mir das mal angesehen! das ist zu hoch für mich! ich kann schon stop(); und gotoAndPlay und so aber das ! kannst du mir das mal son biossel erklären wo muss ich zum beispiel die nameben voin den bildern hinschreiben und warum geht vdas bei mir net?! danke mfg
 
Naja, ich kanns versuchen:

Zunächst verzichte auf Grafiken und Schaltflächen, und verwende ausschließlich MovieClips. Gib dem Kreis den Instanznamen "ball".

Auf den Button kommt dann das Script zum Vergrößern bzw. Verkleinern und zwar bei on(rollOver) bzw. on(rollOut).

Die gleichmässige Variante:
  • Bei on(rollOver) wird eine onEnterFrame-Methode auf dem Ball erstellt (das ist eine Funktion, die mit jedem Frameaufruf aufgerufen wird, sprich: periodisch).

  • In dieser Methode wird zunächst geschaut, ob der Ball schon 300% groß ist (bzw. 300 - 4, da ich ihn bei jedem Frame um 4 Prozentpunkte vergrößere):
PHP:
if (this._xscale <= 300 - 6) {


  • Wenn dem so ist, so wird der Ball (den ich hier mit "this" ansprechen kann, da sich die onEnterFrame-Methode ja auf dem Ball befindet) um 4 Prozentpunkte vergrößert:
PHP:
this._xscale += 6;
this._yscale = this._xscale;
_xscale und _yscale sind Eigenschaften für die vertikale und horizontale Skalierung eines MovieClips in Prozent. Mit dem Operator "+=" wird ein Wert um den zweiten Operanden erhöht.


  • Hat der Ball seine Endskalierung erreicht, so wird er endgültig auf 300% gesetzt und die onEnterFrame-Methode wird gelöscht:
PHP:
this._xscale = this._yscale = 300;
delete this.onEnterFrame;
delete this.onEnterFrame;


  • Beim on(rollOut) passiert das gleiche, bloß umgekehrt (von 300 bis 100).

Die abgebremste Variante funktioniert im Prinzip ähnlich, bloß dass ich bei jedem Schritt den Ball um einen Wert seiner Zielskalierung anpasse, der sich aus der Differenz von Momentaner und endgültiger Skalierung errechnet:
PHP:
this._xscale += (300 - this._xscale) / 5;
Das heisst: Jede Frameaufruf wird der Ball um ein fünftel der Differenz zwischen seiner aktuellen Skalierung und der von 300% nachskaliert.

Gruß

Mein Hinweis auf die Netiquette war übrigens ernst gemeint: Achte auf Rechtschreibung und verwende die Shift-Taste gelegentlich, sonst ist hier demnächst Schluss!
.
 
ok das hab ich schon mal verstanden! lol
jetz hab ich noch 2 Probleme:
1. das bild soll am anfang einen alpha wert von 20 & haben und am ende (wenn es ganz groß ist halt 100 % praktisch nicht mehr transperent)
2. die Bilder (das sollen mal 18 Stk. werden) die müssen sich nicht so vergrößern wie sie est jetzt machen praktisch das eine ecke sich nicht bewegt und der rest (zB die kanten) sich verschieben und das ganze so größer wir. es sollen sich alle secken und kansten zu bestimmten koordinaten verscheiben!

Geht das? Vielen Dank MfG Breit
 
Status
Nicht offen für weitere Antworten.

Neue Beiträge

Zurück