쇼핑몰에서 많이 쓰는 자동 슬라이드

· 2008-02-11 (월) 15:30:54 · 5031 · 12
쇼핑몰 같은데서 많이 볼 수 있는 슬라이드
 Tween클래스가 있으니...enterFrame을 쓸 필요가 없어지네요.
 
import mx.transitions.Tween;
import mx.transitions.easing.*;
Stage.scaleMode = "noScale";
var container_mc:MovieClip = this.createEmptyMovieClip("container_mc", 0);
var image_mc:MovieClip = container_mc.createEmptyMovieClip("image_mc", 0);
var photo0:MovieClip = image_mc.createEmptyMovieClip("photo0", 4);
var photo1:MovieClip = image_mc.createEmptyMovieClip("photo1", 3);
var photo2:MovieClip = image_mc.createEmptyMovieClip("photo2", 2);
var photo3:MovieClip = image_mc.createEmptyMovieClip("photo3", 1);
var photo4:MovieClip = image_mc.createEmptyMovieClip("photo4", 0);
photo0.loadMovie("./photo/1.jpg");
photo1.loadMovie("./photo/2.jpg");
photo2.loadMovie("./photo/3.jpg");
photo3.loadMovie("./photo/4.jpg");
photo4.loadMovie("./photo/5.jpg");
var url_0:String = "http://www.naver.com";
var url_1:String = "http://www.daum.net";
var url_2:String = "http://www.empas.com";
var url_3:String = "http://www.yahoo.co.kr";
var url_4:String = "http://www.msn.co.kr";

var button_mc:MovieClip = container_mc.createEmptyMovieClip("button_mc", 1);
var bt0:MovieClip = button_mc.attachMovie("bt1", "bt0", 0, {_x:0, _y:0});
var bt1:MovieClip = button_mc.attachMovie("bt2", "bt1", 1, {_x:0, _y:27});
var bt2:MovieClip = button_mc.attachMovie("bt3", "bt2", 2, {_x:0, _y:54});
var bt3:MovieClip = button_mc.attachMovie("bt4", "bt3", 3, {_x:0, _y:81});
var bt4:MovieClip = button_mc.attachMovie("bt5", "bt4", 4, {_x:0, _y:108});
button_mc._x = 382;
button_mc._y = 22;

var photo_num:Number = 5; // 사진갯수
var WhoIsOn:Number = 0; // 현재의 위치를 나타내는 값
var slideTimer:Number; // 자동슬라이드를 위한 interval값
var interval_time:Number = 3000; // 슬라이드 지연 시간, 기본 3초설정
 

/* 자동 슬라이드 -------------------------------------------------*/
function makeSlide(){
 WhoIsOn = (WhoIsOn+1)%photo_num;
 var depth_num:Number = photo_num - 1;
 var target_mc:MovieClip = image_mc.getInstanceAtDepth(depth_num);
 
 image_mc["photo" + WhoIsOn].swapDepths(target_mc);
 var tw1:Tween = new Tween(image_mc["photo" + WhoIsOn], "_alpha", Strong.easeOut, 0, 100, 1, true);
 var tw2:Tween = new Tween(target_mc, "_alpha", Strong.easeOut, 100, 0, 1, true);
 
 for(var i:Number = 0; i < photo_num; i++){
  button_mc["bt"+i%photo_num].gotoAndStop(1);
 }
 button_mc["bt"+WhoIsOn%photo_num].gotoAndStop(2); 
}

/* 버튼에 마우스 오버 시-------------------------------------------*/
function showPhoto(){
 clearInterval(slideTimer);
 var depth_num:Number = photo_num - 1;
 var target_mc:MovieClip = image_mc.getInstanceAtDepth(depth_num);
 
 /*depth 테스트
 trace("depth 0 =>" + image_mc.getInstanceAtDepth(0));
 trace("depth 1 =>" + image_mc.getInstanceAtDepth(1));
 trace("depth 2 =>" + image_mc.getInstanceAtDepth(2));
 trace("depth 3 =>" + image_mc.getInstanceAtDepth(3));
 trace("depth 4 =>" + image_mc.getInstanceAtDepth(4));
 trace("-------------------------------------------");
 */
 image_mc["photo" + WhoIsOn].swapDepths(target_mc);
 var tw1:Tween = new Tween(image_mc["photo" + WhoIsOn], "_alpha", Strong.easeOut, 0, 100, 1, true);
 var tw2:Tween = new Tween(target_mc, "_alpha", Strong.easeOut, 100, 0, 1, true);
}
/* 버튼에 마우스 오버 시 showPhoto 함수를 실행-------------*/
function buttonAction(){
 for(var i:Number = 0; i < photo_num; i++){
  button_mc["bt"+i].onRollOver = function(){
   var my_num:Number = Number(this._name.substring(2));
   
   for(var j:Number = 0; j < photo_num; j++){
    this._parent["bt"+j].gotoAndStop(1);
   }
   this.gotoAndStop(2);
   
   if(_root.WhoIsOn != my_num){
    _root.WhoIsOn = Number(this._name.substring(2));
    _root.showPhoto();
   }
  }
  
  button_mc["bt"+i].onRelease = function(){
   var num:Number = this._name.substring(2);
   getURL(_root["url_" + num], "_parent");
  }
 }
 image_mc.onRollOver = function(){
  clearInterval(_root.slideTimer);
 }
 image_mc.onRollOut = function(){
  _root.slideTimer = setInterval(_root, "makeSlide", _root.interval_time);
 }
 
 image_mc.onRelease = function(){
  getURL(_root["url_" + WhoIsOn], "_parent");
 }
}
/* 처음 시작할 때의 설정----------------------------*/
function initSlide(){
 for(var i:Number = 0; i < photo_num; i++){
  image_mc["photo" + i]._alpha = 0;
 }
 image_mc.photo0._alpha = 100;
 button_mc.bt0.gotoAndStop(2);
 
 var tw1:Tween = new Tween(image_mc, "_alpha", Strong.easeOut, 0, 100, 2, true);
 tw1.onMotionFinished = function(){
  _root.slideTimer = setInterval(_root, "makeSlide", _root.interval_time);
 }
 buttonAction();
}
initSlide();
 
 
 

ver 8 에서만 가능합니다 -ㅅ-);
----------------------------------------------------------------------
 
 
 
 
[이 게시물은 관리자님에 의해 2011-10-31 16:50:06 Flash에서 이동 됨]

첨부파일

slidePhoto-etwas0227.zip (1.4 MB) 373회 2008-02-11 15:30
|

댓글 12개

2008-02-11 (월) 16:46:53
좋은 자료군요.. 감사감사
2008-02-15 (금) 16:33:36
좋은 자료 감사하구요
잘 퍼감니다~
꾸벅~
좋은자료 감사합니다.
감사합니다..그런데 어떻게 적용하는지..
2008-03-04 (화) 05:57:53
감사합니다.
감사합니다
2008-03-13 (목) 13:33:27
세로 돼잇는데요 가로 만들려면 어덯게 해야되나요
2008-03-21 (금) 12:51:00
감사합니다.
2008-03-31 (월) 10:48:58
호~ 오늘 아침에 이거 하나 만들일 있었는데 딱~있네요 감사합니다 ^^
수월한 아침 작업이 되겠네요 ^^
감사합니다 ^^
2008-04-29 (화) 11:45:47
멋지군요
쇼핑몰에 꼭 적용해보구싶은데요... 어떻게 적용해야할지를 모르겟네요...
head.php부분에 슬라이드를 올린다면 어떻게 적어줘야 하나요.???
누가좀 부탁드립니다...
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
08-04-17 조회 4,291
08-03-14 조회 3,191
08-03-08 조회 3,010
08-03-06 조회 2,982
08-03-03 조회 4,273
08-02-20 조회 2,960
08-02-15 조회 3,871
08-02-11 조회 5,032
08-02-09 조회 5,720
08-02-05 조회 3,807
08-01-14 조회 6,620
08-01-11 조회 7,052
08-01-04 조회 1.1만
07-12-10 조회 4,958
07-12-10 조회 3,821
07-12-04 조회 3,358
07-11-29 조회 3,540
07-11-27 조회 3,899
07-11-23 조회 4,495
07-11-23 조회 4,227
07-11-13 조회 4,355
07-10-19 조회 4,809
07-10-17 조회 5,862
07-10-03 조회 4,894
07-10-02 조회 8,791
07-10-02 조회 4,447
07-09-09 조회 3,414
07-07-29 조회 4,293
07-07-28 조회 4,522
07-07-26 조회 4,427
07-06-19 조회 1.1만
07-06-17 조회 3,592
07-06-15 조회 4,093
07-05-31 조회 3,152
07-05-09 조회 5,310
07-05-04 조회 3,156
07-05-04 조회 3,507
07-04-28 조회 6,403
07-04-26 조회 4,643
07-04-14 조회 5,292
07-04-13 조회 3,706
07-04-12 조회 5,897
07-03-27 조회 3,833
07-03-19 조회 3,513
07-03-13 조회 4,609
07-03-07 조회 4,765
07-03-07 조회 3,272
07-02-25 조회 3,636
07-02-21 조회 4,522
07-02-18 조회 5,043
07-02-12 조회 3,386
07-02-02 조회 4,503
07-01-28 조회 6,113
07-01-27 조회 5,621
07-01-25 조회 3,984
07-01-21 조회 4,619
07-01-19 조회 6,566
07-01-19 조회 8,019
07-01-13 조회 3,474
07-01-09 조회 5,113
06-12-27 조회 3,512
06-11-24 조회 3,639
06-11-18 조회 4,157
06-10-17 조회 5,475
06-10-01 조회 4,387
06-09-26 조회 4,277
06-09-25 조회 4,603
06-09-25 조회 4,299
06-09-22 조회 4,844
06-09-22 조회 3,611
06-09-22 조회 4,438
06-09-13 조회 5,276
06-08-27 조회 4,876
06-08-26 조회 6,234
06-08-26 조회 5,557
06-08-23 조회 5,055
06-07-28 조회 7,156
06-07-24 조회 4,609
06-07-23 조회 5,394
06-07-21 조회 5,156
06-07-19 조회 3,035
06-07-19 조회 2,944
06-07-11 조회 3,603
06-07-11 조회 3,900
06-07-11 조회 4,470
06-07-11 조회 4,927
06-07-11 조회 3,557
06-07-11 조회 9,182
06-07-11 조회 4,043
06-07-11 조회 3,273
06-07-11 조회 3,327
06-07-11 조회 3,253
06-07-11 조회 3,052
06-07-07 조회 4,095
06-06-25 조회 4,448
06-06-15 조회 4,437
06-06-14 조회 4,933
06-06-11 조회 3,511
06-06-10 조회 3,892
06-06-09 조회 3,478