前一段做音樂和鏈接保存項目時用到了UserData,現(xiàn)在上線后效果不錯,就把UserData的一些用法總結出來,大家一同分享。
UserData是微軟為IE專門在系統(tǒng)中開辟的一塊存儲空間,所以說只支持Windows+IE的組合,實際測試在2000(IE5.5)、XP(IE6、IE7),Vista(IE7)下都是可以正常使用的。
在XP下,一般位于C:\Documents and Settings\用戶名\UserData,有些時候會在C:\Documents and Settings\用戶名\Application Data\Microsoft\Internet Explorer\UserData。
在Vista下,位于C:\Users\用戶名\AppData\Roaming\Microsoft\Internet Explorer\UserData。
網頁制作完成手冊中這樣說:
Security Zone | Document Limit (KB) | Domain Limit (KB) |
Local Machine | 128 | 1024 |
Intranet | 512 | 10240 |
Trusted Sites | 128 | 1024 |
Internet | 128 | 1024 |
Restricted | 64 | 640 |
線上使用時,單個文件的大小限制是128KB,一個域名下總共可以保存1024KB的文件,文件個數(shù)應該沒有限制。在受限站點里這兩個值分別是64KB和640KB,所以如果考慮到各種情況的話,單個文件最好能控制64KB以下。
用下面的JS語句就可以建立一個支持UserData的對象:
o = document.createElement('input');說白了UserData就是樣式里的一個Behavior,所以這樣寫也是一樣的:
<input type=hidden class= storeuserData />UserData可以綁定在大多數(shù)的html標簽上,具體為:
A, ACRONYM, ADDRESS, AREA, B, BIG, BLOCKQUOTE, BUTTON, CAPTION, CENTER, CITE, CODE, DD, DEL, DFN, DIR, DIV, DL, DT, EM, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LI, LISTING, MAP, MARQUEE, MENU, OBJECT, OL, OPTION, P, PLAINTEXT, PRE, Q, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TEXTAREA, TT, U, UL, VAR, XMUserData對象有以下的屬性和方法:
屬性 | 描述 |
設置或讀取文件過期時間 | |
讀取文件的XML DOM |
方法 | 描述 |
讀取指定屬性的值 | |
打開文件 | |
刪除指定的屬性 | |
保存文件 | |
為指定屬性賦值 |
UserData文件實際上就是一個XML文件,通過文件名->屬性的方式保存字符串,如以下一段代碼:
o.setAttribute("code", "hello world!");在一個文件中可以有多個屬性,也就是可以存儲多種不同的數(shù)據(jù)。
在音樂盒鏈接保存項目里,封裝了一個UserData類,這樣可以更方便地使用UserData,代碼如下:
/** @class 定義userdata的操作 */