Таблица рекордов
Привет всем! Я новичок на форумах да и в JS тоже. Для одной игры хочу сделать таблицу рекордов, чтобы она не сбрасывалась после обновления страницы.
Работать должна так: есть некая переменная (a), если другая переменная (b) равна 1, то спросить сохранять ли результат (a). Если да то добавить результат в таблицу ниже (при этом вытеснить более маленький (не более 5 результатов в таблице), и недобавлять его если он меньше самого маленького в таблице) и построить все результаты в порядке убывания. В принципе могу всё сделать сам, но таблица станет пустой после обновления. Можно ли с помощью JS и html всё это дело сохранять? Если да, то прошу рассказать как. |
localstorge
|
вот тебе немного моих наработок)
функция storge() принимает 2 параметра первый ИМЯ, второй значение. Так же в значение можно передавать обьекты {}. например storge('рекорды' , {'саша' : 200, 'маша' : 200} ) чтобы получить значение передаешь просто имя ключа var qq = storge('рекорды') // localstorge storge = function() { // если аргумент один if (arguments.length == 1) { var arg1 = arguments[0]; // если первый аргумент строка if (typeof arg1 == 'string') { var retString = localStorage.getItem(arg1); if (retString == null) { return false } var last = retString.length - 1; // если строка в сторче похожа на json обьект if ((retString[0] == '{' && retString[last] == '}') || (retString[0] == '[' && retString[last] == ']')) { // то распарсить и вернуть обьект return JSON.parse(retString) }// если нет else {// то вернуть просто строку return retString } }// если первый аргумент обьект else if (typeof arg1 == 'object') { for (prop in arg1) {// то засунуть значения и ключи в сторч try { localStorage.setItem(prop, arg1[prop]); return true } catch (e) { if (e == QUOTA_EXCEEDED_ERR) { alert('Локальное хранилище переполнено'); return false } } } } // если аргумента два } else if (arguments.length == 2) { var arg1 = arguments[0]; var arg2 = arguments[1]; // если второй аргумент строка или номер if (typeof arg2 == 'string' || typeof arg2 == 'number') { try { // то засунуть ключ и значение в сторч localStorage.setItem(arg1, arg2) return true } catch (e) { if (e == QUOTA_EXCEEDED_ERR) { alert('Локальное хранилище переполнено'); return true } } }// если второй аргумент null else if (arg2 == null) { // то удалить значение и ключ localStorage.removeItem(arg1) return true } // если второй аргумент обьект else if (typeof arg2 == 'object') { try { // то преобразовать в json строку и засунуть в сторч localStorage.setItem(arg1, JSON.stringify(arg2)) return true } catch (e) { if (e == QUOTA_EXCEEDED_ERR) { alert('Локальное хранилище переполнено'); return true } } } } } // очистить сторч storge.clear = function() { localStorage.clear() } |
Livaanderiamarum,
Ты подлый. Хотя бы упомянул бы, что данное решение сохранит данные только в браузере пользователя, и другие пользователи увидят своб таблицу рекордов |
Так он же так и просил вроде, нет?
п.с. Версия древняя я её год назад писал) надо будет переписать седня) а, да, удалять значеня моно так вроде storge('рекорды', null) |
Да не мне нужно не в браузере, а для всех. Может простенькую CMS сделать? Ток я в этом совершенно неразбираюсь :(
|
Цитата:
|
Можно ссылку на "учебник для создания простеньких CMS, обновляющих таблицу рекордов". :)
|
Цитата:
Кстати, а что такое CMS? Я прост не опытный в этом деле) че эт такое то своими словами)? |
Вот тебе на латышском расшифровка)
Satura vadības sistēma |
Часовой пояс GMT +3, время: 08:46. |