[問題] AS3的按鈕滑入滑出變化
最近才努力看懂AS3,如果看書的範例,是懂得它在寫什麼,
但應用起來卻完全茫然一片…
我在做按鈕的滑出滑入時遇到了盲點,感覺很簡單,卻一直找不到出口
(嗚嗚嗚…為啥咪呀…)
請問…
我想做一進入首頁,首頁的按鈕是處於"on"狀態的,
不論滑入滑出哪一個按鈕,首頁的按鈕都不會有變化,
所以我在$rollOut函式裡下了判斷,
接觸鈕($over)等於4時(即"home"鈕)它的影格會在"on"標籤,
其它都是在"out"標籤裡,
可是當滑鼠滑出"home"鈕時,它還是會執行"out"標籤……
將$over不等於4時,它的影格會在"out"標籤,其它都是在"out"標籤時,
被滑鼠過的"home"鈕依然快樂無比的跳進"out"標籤裡…orz
原始碼如下:
var $num:uint = 4;
//宣告正整數變數$num=4,此為連結按鈕的數量
var $link:Array = ["one.html", "two.html", "three.html", "index.html"];
/*宣告$link為一陣列,在陣列中將網頁檔案的連結路徑儲存進去*/
var $over:uint = 4;
/*宣告$over初值為4,希望一進來的「home」是"on"狀態中,使瀏覽者知道其目前
的頁面*/
this["bt0" + $over].gotoAndPlay("on");
//定義$rollOver函式,為判斷滑鼠正滑到哪一顆按鈕上
function $rollOver($evt:MouseEvent){
/*讓$over等於目前所取按鈕的第四個數字,例:bt02,$over即等於2*/
$over = $evt.target.name.slice(3);
/*讓$over減一的原因,是因為$link由0始,$over卻是由1,為使連結到相
配合之路徑,故讓$over減1*/
$over = $over - 1;
/*當滑入某一按鈕時,執行"on"動畫*/
$evt.target.gotoAndPlay("on");
}
//定義$rollOut函式,為判斷滑鼠滑出按鈕恢復其原狀
function $rollOut($evt:MouseEvent){
if ($over == 4){
/*「home」按鈕會一直停留在"on"裡*/
$evt.target.gotoAndPlay("on");
}else{
$evt.target.gotoAndPlay("out");
}
}
//定義jumpToPage函式,連結到特定網頁的函式
function $jumpToPage($myEvent:MouseEvent):void {
for (var $i=0; $i<=$num; $i++) {
if ($over == $i) {
/*如果i等於$over,即代表找到相對應之路徑*/
var $gotolink = $link[$i];
var $linkRequest:URLRequest = new URLRequest($gotolink); //建立超連結物件實體
//建立一目標網址為myLink的URLRequest類別實體,存入名為
linkRequest的變數中
navigateToURL($linkRequest, "_self");
//指定超連結物件實體,以連往指定網頁
//連結到linkRequest中所存放之超連結頁面去
}
}
}
//按鈕的偵聽。因為有四顆按鈕,所以執行for迴圈四次
for (var $j:uint=1; $j<=$num; $j++) {
//讓按鈕的動畫一開始就停下來,再依此按鈕遇到的情形進行其執行函式
this["bt0" + $j].stop();
this["bt0" + $j].addEventListener(MouseEvent.ROLL_OVER,$rollOver);
this["bt0" + $j].addEventListener(MouseEvent.ROLL_OUT,$rollOut);
this["bt0" + $j].addEventListener(MouseEvent.CLICK,$jumpToPage);
}
======================================================================
為了怕大家傷眼,還自備原始檔:
http://foriris.myweb.hinet.net/q/091216_as3btlink.rar
(請原諒我不會縮址…QQ)
※ 編輯: meano 來自: 114.38.8.91 (12/16 18:07)
→
12/16 18:08, , 1F
12/16 18:08, 1F
→
12/16 18:24, , 2F
12/16 18:24, 2F
→
12/16 18:25, , 3F
12/16 18:25, 3F
→
12/16 18:25, , 4F
12/16 18:25, 4F
推
12/16 18:40, , 5F
12/16 18:40, 5F
推
12/16 18:52, , 6F
12/16 18:52, 6F
→
12/16 18:53, , 7F
12/16 18:53, 7F
→
12/16 18:53, , 8F
12/16 18:53, 8F
→
12/16 18:53, , 9F
12/16 18:53, 9F
→
12/16 18:53, , 10F
12/16 18:53, 10F
→
12/16 22:07, , 11F
12/16 22:07, 11F
→
12/16 22:09, , 12F
12/16 22:09, 12F
→
12/16 22:10, , 13F
12/16 22:10, 13F
→
12/16 22:10, , 14F
12/16 22:10, 14F
→
12/16 22:13, , 15F
12/16 22:13, 15F
推
12/16 22:29, , 16F
12/16 22:29, 16F
→
12/16 23:04, , 17F
12/16 23:04, 17F
推
12/16 23:27, , 18F
12/16 23:27, 18F
→
12/17 13:08, , 19F
12/17 13:08, 19F