|
可用性
Flash Player 6
Flash Media Server(不是必需的)
用法myLocalOrRemote_so.data描述只读属性;分配到对象的var items_array:Array = new Array(101, 346, 483); /或存储。每个属性都可以是任何基本ActionScript或[table][tr][td] var currentUserIsAdmin:Boolean = true;
var currentUserName:String = "Ramona";
var my_so:SharedObject = SharedObject.getLocal("superfoo");
my_so.data.itemNumbers = items_array;
my_so.data.adminPrivileges = currentUserIsAdmin;my_so.data.itemNumbers =
items_array;my_so.data.userName = currentUserName;my_so.data.adminPrivileges = currentUserIsAdmin;
my_so.data.userName = currentUserName;
for (var prop in my_so.data) {
trace(prop+": "+my_so.data[prop]);
}
一个共享对象的data属性的所有属性对于连接到这个共享对象的所有客户机都是可用的,如果对象是永
久性的,则所有这
些属性都会被保存。属性是不稳定的;如果一个客户机改变了一个属性的值,则所有的客户机现在都会看
到新值。上面创建的
共享对象包含下列信息:
userName: Ramona
adminPrivileges: true
itemNumbers: 101,346,483
注意:不要将值直接赋予共享对象的data属性(例如my_so.data = http://www.adobetop.com/someValue;),Flash将忽略这些赋值。
undefined,并不会删除这个属性。 delete so.data.attributeName这样的代码;为一个本地共享对象的某
个属性设置null或
要为一个共享对象创建一个“私有”值-这种值仅在对象被使用时对客户机实例是可用的,并且当客户机
实例被关闭时,这,并不会删除这个属性。
种值也不会随对象被存储下来-创建那些不被命名为data的属性来存储它们,就像下面的范例展示的那样:
var my_so:SharedObject = SharedObject.getLocal("superfoo");
my_so.favoriteColor = "blue";
my_so.favoriteNightClub = "The Bluenote Tavern";
my_so.favoriteSong = "My World is Blue";my_so.favoriteSong = "My World is Blue";
for (var prop in my_so) {
trace(prop+": "+my_so[prop]);
}
这个共享对象包含下列数据:
favoriteSong: My World is Blue
favoriteNightClub: The Bluenote Tavern
favoriteColor: blue
data: [object Object]
例子
下面的范例把来自一个TextInput组件实例的文本保存到一个名为my_so的共享对象中(要获得完整的范
例,参看
SharedObject.getLocal()):
// 为<enter>事件创建一个侦听器对象和函数。
var textListener:Object = new Object();
textListener.enter = function(eventObj:Object) {
my_so.data.myTextSaved = eventObj.target.text;
my_so.flush();
}; |
|