• beyond tellerrand – play. Register Now!
Zurück   Flashforum > Flash > Stuff

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 07-07-2010, 15:10   #1 (permalink)
lebt in stereo
 
Benutzerbild von figure8
 
Registriert seit: Mar 2008
Ort: karlsruhe
Beiträge: 1.093
Inertia Movements

hi,
ich weiß nicht, ob´s sowas schon hier gibt, aber jedenfalls hab ich zwei snippets für "je weiter du mit der maus nach links gehst, desto schneller bewegt sich der clip darunter nach rechts" gebastelt - kennt man aus vielen thumbnail-galerien oder navigationen. da dazu ein bißchen text (auf englisch) gehört, poste ich einfach mal den direkten link und nur das script:

Two Inertia Movements | Beautify Code Blog


Endlos:
ActionScript:
  1. var xCenter:int = thumbMask.width/2;
  2. var acc:Number;
  3.  
  4. clipContainer.addEventListener(MouseEvent.ROLL_OVER, onClipRoll);
  5. clipContainer.addEventListener(MouseEvent.ROLL_OUT, onClipRoll);
  6.  
  7. function onClipRoll(event:MouseEvent):void {
  8.     if(event.type == MouseEvent.ROLL_OVER) clipContainer.addEventListener(Event.ENTER_FRAME, moveContainer);
  9.     else clipContainer.removeEventListener(Event.ENTER_FRAME, moveContainer);
  10. }
  11.  
  12. function moveContainer(event:Event):void {
  13.     acc = thumbMask.mouseX < xCenter ? xCenter-thumbMask.mouseX : -(thumbMask.mouseX-xCenter);
  14.     clipContainer.x += acc * 0.05;
  15. }

begrenzt und langsamer werden:
ActionScript:
  1. var leftLimit:int = 0;
  2. var rightLimit:int = -245;
  3.  
  4. var thumbWidth:Number = thumbMask.width;
  5.  
  6. var xRef:Number;
  7. var xConv:Number;
  8.  
  9. clipContainer.addEventListener(MouseEvent.ROLL_OVER, onClipRoll);
  10. clipContainer.addEventListener(MouseEvent.ROLL_OUT, onClipRoll);
  11.  
  12. function onClipRoll(event:MouseEvent):void {
  13.     if(event.type == MouseEvent.ROLL_OVER) clipContainer.addEventListener(Event.ENTER_FRAME, moveContainerBySlow);
  14.     else clipContainer.removeEventListener(Event.ENTER_FRAME, moveContainerBySlow);
  15. }
  16.  
  17. function moveContainerBySlow(evt:Event):void {
  18.     xRef = -thumbMask.mouseX + thumbWidth / 2;
  19.     xConv = (xRef - clipContainer.x) * 0.01;
  20.    
  21.     clipContainer.x += xConv;
  22.  
  23.     // cliplimits
  24.     if (clipContainer.x>= leftLimit) clipContainer.x = leftLimit;
  25.     if (clipContainer.x <= rightLimit) clipContainer.x = rightLimit;
  26. }

oder hier im forum: navigation
__________________
* Flash-JunkieMusiker & Grafiker

# Marvin Blase
# Speaker, Author, Silly Billy.
# @beautifycode

Geändert von figure8 (07-07-2010 um 16:08 Uhr)
figure8 ist offline   Mit Zitat antworten
Alt 07-07-2010, 15:57   #2 (permalink)
undefined
 
Benutzerbild von mildesign
 
Registriert seit: Jul 2001
Ort: Stuttgart
Beiträge: 1.810
Schönes snippet. Hab es noch nicht getestet aber ich würde noch
PHP-Code:
if(event.type == "rollOver"
durch
PHP-Code:
if(event.type == MouseEvent.ROLL_OVER
ersetzen.
Das ist irgendwie konsequenter als einmal mit Konstante und dann wieder mit Strings zu arbeiten ;o)
__________________
mfg Frank
mildesign ist offline   Mit Zitat antworten
Alt 07-07-2010, 16:05   #3 (permalink)
lebt in stereo
 
Benutzerbild von figure8
 
Registriert seit: Mar 2008
Ort: karlsruhe
Beiträge: 1.093
oh, jau - stimmt. wird geändert, danke
__________________
* Flash-JunkieMusiker & Grafiker

# Marvin Blase
# Speaker, Author, Silly Billy.
# @beautifycode
figure8 ist offline   Mit Zitat antworten
Alt 09-07-2010, 02:16   #4 (permalink)
lebt in stereo
 
Benutzerbild von figure8
 
Registriert seit: Mar 2008
Ort: karlsruhe
Beiträge: 1.093
so, falls es wen interessiert: es ist eine kleine demo vom script online (link siehe oben).
__________________
* Flash-JunkieMusiker & Grafiker

# Marvin Blase
# Speaker, Author, Silly Billy.
# @beautifycode
figure8 ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
pah, mathe :) (rotation & inertia) figure8 ActionScript 3 5 28-09-2009 14:22


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:25 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele