在我的网站上,我有一个 Flash 横幅,当用户更改页面时它会保存其框架位置,以便在用户每次浏览网站时继续播放而不是重新启动。这是使用共享对象实现的。它很好用,除了一件事:cookie 持续时间太长。即使当天晚些时候我回到该网站,它仍然会重新加载我的最后一个位置。当用户离开域名时,我想刷新共享对象,但我不确定如何实现它。有人可以帮忙吗!
好的,谢谢你的回复拉斯。这是我得到的:
var mySharedObject:SharedObject = SharedObject.getLocal("displayCookie");
var expiredate = mySharedObject.data.expires;
var timeobject = new Date();
var timestamp = timeobject.getTime();
if (expiredate<=timestamp && expiredate != null) {
for (var i in mySharedObject.data) {
delete mySharedObject.data[i];
}
mySharedObject.flush();
} else if (expiredate == null) {
var oneday = 100;
var expiresIn = 1;
var expiretimestamp = timestamp+expiresIn*oneday;
mySharedObject.data.expires = expiretimestamp;
mySharedObject.flush();
}
if (mySharedObject.data.introcheck != 0) {
mySharedObject.data.introcheck = 0;
mySharedObject.flush();
gotoAndPlay(1);
} else {
addEventListener(Event.ENTER_FRAME, checkLoadedFrames);
function checkLoadedFrames(e:Event):void {
if(this.framesLoaded == this.totalFrames) {
removeEventListener(Event.ENTER_FRAME, checkLoadedFrames);
checkSharedObject();
}
}
function checkSharedObject():void {
if(mySharedObject.data.currentFrame){
gotoAndPlay(mySharedObject.data.currentFrame);
}
addEventListener(Event.ENTER_FRAME, saveCurrentFrame);
}
function saveCurrentFrame(e:Event):void {
mySharedObject.data.currentFrame = this.currentFrame;
}
}
我将 oneday var 更改为 100ms 以检查它是否有效,但它没有。我究竟做错了什么?