แฟลชแบบนี้เค้าทำกันอย่างไรคะ ..

เริ่มโพสต์โดย alwaeyz, 11 พ.ย. 2010, 14:37 น.

0 สมาชิก และ 1 บุคคลทั่วไป กำลังเปิดอ่านโพสต์นี้

alwaeyz

http://www.komatsu-ntc.com/ แบบเวปนี้ค่ะ
ที่จะเป็นสไลด์รูปภาพ แล้วมันจะเลื่อนเป็นภาพที่เราเอาเมาส์ไปวาง

รบกวนนนพี่ๆน้าๆสอนหน่อยนะคะ :09:

ขอบคุณค่าๆๆๆ

iannnnn


หนูอร


อธิบายไม่เป็น แต่หลักๆคือเป็นคำสั่งให้อนิเมตตอน Rollover น่ะค่ะ
เครื่องนี้ไม่มีแฟลช เลยลองเปิดมาทำไม่ได้

ลอง google ดูน่าจะมีเว็ปสอนนะคะ  :56:


อันบัน ♥

จักรี

เอาแบบง่ายๆ ทำแอนิเมชั่น สไลด์รูป ให้เป็น mc ครับ แล้วสร้างปุ่มขึ้นมาสั่ง mc อีกที

แต่คิดว่าตัวอย่างนั่นน่าจะเขียนสคริปค่อนข้างซับซ้อนนิดนึง รู้สึกว่าอาจจะต้องกำหนดจุด x y ให้มันด้วย
ล้ำลึกคนึงหาในดวงจิต ใจเคยคิดตัดสวาทมิอาจสิ้น
ดั่งก้านบัวหักกลางชลาสินธุ์ ผิว่าสิ้นไร้เยื่อยังเหลือใย

Bellbells

as ไหนอะครับ  :09:
ถ้า as3 เคยทำไว้อะครับ

อ้างอิงfunction moveMasks(currentIndex:int, state:String="over"){
   var targetX:Number
   if(currentIndex > 0){
      var currentMover:MovieClip = this["move"+currentIndex+"_mc"] as MovieClip;
      targetX = currentMover.x;
   }
   
   for(var i:int = currentIndex+1; i <= 5; i++){
      var masker:MovieClip = this["move"+i+"_mc"] as MovieClip;
      if(state == "over"){
         targetX = (oriX[currentIndex-1] - 100) - (26.5*(i-currentIndex-1))-1;
         TweenLite.to(masker, 0.5, {x: targetX, width: oriW[i-1], ease: Expo.easeOut});
      }else if(state == "select"){
         targetX = (oriX[currentIndex-1] - 590) - (26.5*(i-currentIndex-1))-1;
         TweenLite.to(masker, 0.5, {x: targetX, width: oriW[i-1], ease: Expo.easeOut});
      }else{
         TweenLite.to(masker, 0.5, {x: oriX[i-1], width: oriW[i-1], ease: Expo.easeOut});
      }
   }
   
   if(state == "over")
      TweenLite.to(blackbg_mc, 0.5, {width: blackW+75, ease: Expo.easeOut});
   else if(state == "select")
      TweenLite.to(blackbg_mc, 0.5, {width: 800, ease: Expo.easeOut});
   else
      TweenLite.to(blackbg_mc, 0.5, {width: blackW, ease: Expo.easeOut});
}
function onMaskOver(e:MouseEvent){
   var target:MovieClip = e.target as MovieClip;
   var index:int = int(target.name.charAt(4));
   var masker:MovieClip = this["move"+index+"_mc"] as MovieClip;
   moveMasks(index);
   TweenLite.to(this["pic0"+index+"_mc"], 0.5, {alpha:1.0,colorMatrixFilter:{saturation:1}});
   TweenLite.to(masker, 0.5, {width: 100, x: oriX[index-1], ease: Expo.easeOut});
}
function onMaskOut(e:MouseEvent){
   var target:MovieClip = e.target as MovieClip;
   var index:int = int(target.name.charAt(4));
   TweenLite.to(this["pic0"+index+"_mc"], 0.5, {alpha:0.7,colorMatrixFilter:{saturation:0}});
   var masker:MovieClip = this["move"+index+"_mc"] as MovieClip;
   moveMasks(0, "out");
}
function onMaskClick(e:MouseEvent){
   var target:MovieClip = e.target as MovieClip;
   var index:int = int(target.name.charAt(4));
   var masker:MovieClip = this["move"+index+"_mc"] as MovieClip;
   moveMasks(index, "select");
   TweenLite.to(masker, 0.5, {width: 590, x: oriX[index-1], ease: Expo.easeOut});
}

อันนี้ใช้ tween lite นะ มันจะได้ลื่นๆหน่อย ผมใช้วิธีขยาย mask เอารูปภาพวางที่เดิม หลักการก็แค่พอเอาเม้าวางเหนือตัวฉัน
ให้ผลักอันที่ index น้อยกว่าไปทางขวา ผลักๆกันไปให้เท่ากับจำนวนที่ตัวฉันยืด ส่วนจะเขียนเพิ่มเติมยังไงช่วยตัวเองนะ  :30:


alwaeyz

อ่าๆๆๆๆๆๆๆๆๆๆๆๆๆ
สงสัยท่าจะยากซะแล้ววว

ขอบคุณทุกท่านนมากเลยค่า

จะค่อยๆๆลองศึกษาดูนะคะ
>0< ..

SMF 2.1.7 © 2026, Simple Machines