
12.06.2008, 16:57
|
|
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме: 2209675
Репутация:
537
|
|
почитал по диагонали, storage показался наиболее простым для понимания.
----[ STORAGE ... ]
Описание модели, реализующей хранение данных на стороне клиента, появилось в html 5 (http://www.whatwg.org/specs/web-apps/current-work/#storage0).
Данный способ является на данный момент самым удобным и даже кроссбраузерным.Люди в w3c представляют структуру storage так
Цитата:interface Storage {
readonly attribute unsigned long length;
[IndexGetter] DOMString key(in unsigned long index);
[NameGetter] DOMString getItem(in DOMString key);
[NameSetter] void setItem(in DOMString key, in DOMString data);
[XXX] void removeItem(in DOMString key);
void clear();
};
Mozilla Firefox предлагает использовать два типа хранилищей - sessionStorage и globalStorage. Первый доступен только на протяжение времени жизни страницы и как только страница закрывается получить доступ к данным уже невозможно. Получить состояние storage можно через dom свойство Dom.storage.enabled
| // Сохраняем в sessionStorage переменную username со значением antichat
| sessionStorage.username = "antichat";
| // Проверяем, сохранилась ли переменная
| alert( "username = " + sessionStorage.username );
| // Получаем дескриптор текстового поля
| var field = document.getElementById("field");
|
| // Если включен режим автосохранения, загружаем черновик
| if ( sessionStorage.autosave ) {
| field.value = sessionStorage.autosave;
| }
|
| // Проверяем каждую секунду содержимое текстового поля на изменения
| setInterval(function(){
| // Сохраняем в черновик
| sessionStorage.autosave = field.value;
| }, 1000);
GlobalStorage позволяет держать данные на протяжение длительного промежутка времени.
| // Сохранить переменную snippet в globalStorage только для сайта antichat.ru
| globalStorage['antichat.ru'].snippet = "underWHAT?!";
Счетчик посещения
| // parseInt используется для перевода переменной visits в число
| // все данные в *Storage хранятся в виде строки
| globalStorage['mozilla.org'].visits =
| parseInt( globalStorage['mozilla.org'].visits || 0 ) + 1;
Пример #1 http://aaronboodman.com/halfnote/
кто что думает по поводу userData, Storage и window.name? (последний имхо самый неудобный - надо парсить)
кто использовал эти методы и какова у них кроссбраузерность?
|
|
|