Flash MX中Button Object的用法
作者: 来源: 添加时间:2006-5-23 7:19:40要点:
先覆盖原值,然后flush()一次(恰如其名——冲厕所)。
最后显示当前值,如果和原值相同,则不会显示new data saved,即没存入硬盘。(图1)

(图1)
应用:
//prepare functions
soLoad=function(src){
return SharedObject.getLocal(src);
}
soSave=function(src,sdata){
var tmpData= SharedObject.getLocal(src);
for (var i in sdata)
tmpData.data[i]=sdata[i];
trace(tmpData.getSize());
return tmpData.flush();
}
//from Demon.S function lib SharedObject.localDeleteAll
SharedObject.prototype.localDeleteAll=function(){
for(var i in this.data)
delete this.data[i];
return this.flush();
}
//main 2
//init
var mySo="testMod";
var aryData={aritcle:"Flashmx new lighting world day10",author:"Demon.S",date:"4/8/2002",from:"DnVsystem",url:"http://www.dnvs.net"}
//remote one:SharedObject.deleteAll(src);
//local one:clearn local data
var tempSO=SharedObject.getLocal(mySo);
trace("clearing....garbage:" + (tempSO.LocalDeleteAll() ? "cleaned" : "fail in clearning local data"));
//load & save
if (soSave(mySo,aryData) && aryData){
var mainData=soLoad(mySo);
if (mainData) for(var i in mainData.data) trace(i+":"+mainData.data[i]);
else trace("Fail in save ");
}
else trace("No Data");