-
array gallery
Hi, I've been working on this gallery for some time, i started out by having a load of clips on stage, named box01 box02 etc:
Code:
import com.greensock.TweenMax;
import com.greensock.easing.*
var boxes:Array=new Array(box01,box02,box03,box04,box05,box06,box07,box08,box09,box10);
for (var i in boxes) {
boxes[i].leftMC = boxes[i-1];
boxes[i].buttonMode=true;
boxes[i].addEventListener(MouseEvent.MOUSE_OVER, boxrollOver);
boxes[i].addEventListener(MouseEvent.MOUSE_OUT, boxrollOut);
boxes[i].addEventListener(Event.ENTER_FRAME, chkPosition)
}
function chkPosition(e:Event){
if (e.currentTarget.leftMC != undefined){
// adjust this as needed, assumes registration is in upper left corner
e.currentTarget.x = e.currentTarget.leftMC.x + e.currentTarget.leftMC.width + 10;
}
}
function boxrollOver(e:MouseEvent) {
TweenMax.to(e.currentTarget.img, .75, {scaleX:1.3, ease:Elastic.easeOut});
TweenMax.to(e.currentTarget.txt, .75, {x:284, ease:Elastic.easeOut, delay:.1});
}
function boxrollOut(e:MouseEvent) {
TweenMax.to(e.currentTarget.img, .5, {scaleX:1, ease:Elastic.easeOut});
TweenMax.to(e.currentTarget.txt, .5, {x:204, ease:Elastic.easeOut, delay:.1});
}
i then tried making it so i load in all the boxes dynamically (as later i'm going to make these XML driven):
Code:
import com.greensock.TweenMax;
import com.greensock.easing.*;
for (var j:Number=0; j<10; j++) {
var addboxinner:boxinner = new boxinner();
addChild(addboxinner);
}
var boxes:Array=new Array();
boxes.push(j);
for (var i in boxes) {
boxes[i].leftMC=boxes[i-1];
boxes[i].buttonMode=true;
boxes[i].addEventListener(MouseEvent.MOUSE_OVER, boxrollOver);
boxes[i].addEventListener(MouseEvent.MOUSE_OUT, boxrollOut);
boxes[i].addEventListener(Event.ENTER_FRAME, chkPosition);
}
function chkPosition(e:Event) {
if (e.currentTarget.leftMC!=undefined) {
// adjust this as needed, assumes registration is in upper left corner
e.currentTarget.x=e.currentTarget.leftMC.x+e.currentTarget.leftMC.width+10;
}
}
function boxrollOver(e:MouseEvent) {
TweenMax.to(e.currentTarget.img, .75, {scaleX:1.3, ease:Elastic.easeOut});
TweenMax.to(e.currentTarget.txt, .75, {x:284, ease:Elastic.easeOut, delay:.1});
}
function boxrollOut(e:MouseEvent) {
TweenMax.to(e.currentTarget.img, .5, {scaleX:1, ease:Elastic.easeOut});
TweenMax.to(e.currentTarget.txt, .5, {x:204, ease:Elastic.easeOut, delay:.1});
}
but i get the error:
ReferenceError: Error #1056: Cannot create property leftMC on Number.
at boxshifter15_fla::content_1/frame1()
can anyone help please?
-
Code:
import com.greensock.TweenMax;
import com.greensock.easing.*;
var boxes:Array=new Array();
for (var j:Number=0; j<10; j++) {
var addboxinner:boxinner = new boxinner();
addChild(addboxinner);
boxes.push(addboxinner);
}
for (var i in boxes) {
boxes[i].leftMC=boxes[i-1];
boxes[i].buttonMode=true;
boxes[i].addEventListener(MouseEvent.MOUSE_OVER, boxrollOver);
boxes[i].addEventListener(MouseEvent.MOUSE_OUT, boxrollOut);
boxes[i].addEventListener(Event.ENTER_FRAME, chkPosition);
}
function chkPosition(e:Event) {
if (e.currentTarget.leftMC!=undefined) {
// adjust this as needed, assumes registration is in upper left corner
e.currentTarget.x=e.currentTarget.leftMC.x+e.currentTarget.leftMC.width+10;
}
}
function boxrollOver(e:MouseEvent) {
TweenMax.to(e.currentTarget.img, .75, {scaleX:1.3, ease:Elastic.easeOut});
TweenMax.to(e.currentTarget.txt, .75, {x:284, ease:Elastic.easeOut, delay:.1});
}
function boxrollOut(e:MouseEvent) {
TweenMax.to(e.currentTarget.img, .5, {scaleX:1, ease:Elastic.easeOut});
TweenMax.to(e.currentTarget.txt, .5, {x:204, ease:Elastic.easeOut, delay:.1});
}
-
wow that was quick :|
thats AWESOME, thanks alot
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|