Actionscript3.0, Flash, 網頁設計

[AS3]利用Local SharedObject儲存使用者的設定

梅干2008/12/02
  先前在製作音樂盒時,為了記錄使用者的設定,梅干桑則採用Cookie的方式,來記錄使用者的設定,當網頁重新的reload或是關閉重啟時,設定值依然存在,但使用Cookie則會遇到幾個問題,當使用者將Cookie關閉時則無法將設定值寫入,以及當第一次設定時,則要先關閉後重啟瀏覽器時,才會被記錄下來,同時更麻煩的是,這之間還需使用aspx作媒界,Flash先將值傳給aspx後,aspx再將值寫入Cookie裡。   聽到這邊,應該有不少朋友已經口吐白沫了吧!怎麼會用這麼豬頭的作法,Flash其實就已提供SharedObject的物件了,功能與Cookie一模又一樣,且完全不用擔心使用者是否關閉瀏覽器的Cookie問題。

Step1
首先,先在場景中建立一個動態文字框,並命名為msg_txt,以及三個按鈕,別分為open_btclose_btclear_bt等。


Step2
在影格1輸入下方的語法。
SharedObject.as

var mwtSObj:SharedObject;
function obj() {
mwtSObj = SharedObject.getLocal(“mSObj”);
var msg=mwtSObj.data.NOWmode;
if (msg !=null) {
msg_txt.text=msg;
} else {
msg_txt.text=””;
}
}
obj();
open_bt.addEventListener(MouseEvent.CLICK,openObj);
close_bt.addEventListener(MouseEvent.CLICK,closeObj);
clear_bt.addEventListener(MouseEvent.CLICK,clearObj);

function openObj(e:MouseEvent) {
mwtSObj.data.NOWmode=”開”;
obj();
}
function closeObj(e:MouseEvent) {
mwtSObj.data.NOWmode=”關”;
obj();
}
function clearObj(e:MouseEvent) {
mwtSObj.data.NOWmode=””;
obj();
}


[範例預覽] [範例下載]


UAG軍規iPhone防摔殼