У меня есть контрольный список, построенный в html/javascript, и вы можете показать/скрыть каждый раздел контрольного списка, щелкнув стрелку, но я хочу использовать локальное хранилище, чтобы помнить, был ли показан каждый элемент или скрытый последний раз, когда приложение было использовано, а затем загрузило страницу точно так же, как это было в последний раз, когда она была использована. Поэтому, если все элементы контрольного списка, которые были показаны в последний раз, когда пользователь использовал приложение, я хочу, чтобы все элементы контрольного списка отображались в следующий раз, когда они используют приложение. но я не уверен, как получить javascript/localstorage, чтобы запомнить значение отображения css. Возможно, это не лучший способ решить эту проблему. Любые идеи или советы будут оценены.с использованием локального хранилища для запоминания значения css display
ответ
Не используйте его для хранения значения css, просто используйте его для сохранения последнего состояния флажка. Поэтому, если они проверяют флажок, сохраните значение в localstorage, как отмечено для этого флажка. И затем, когда страница загружается, получите состояние всех флажков из localstorage, и вы можете переключить их все на свое предыдущее состояние. Состояние флажка будет управлять классом css, который будет применяться к ним.
Чтобы использовать локальное хранилище, необходимо помнить, что строки хранятся. Вы можете использовать объект JSON, стробированный, для хранения данных.
Используйте флажок идентификатор в качестве свойства, и это стиль отображения в качестве значения:
Сначала получить флажок по идентификатору (может быть сделано в цикле):
var checkbox =document.getElementById('someCheckbox');
Тогда вам нужно получить текущая строка хранения:
var myStorageData = localStorage.getItem('mydata');
и проверить, если он существует, и если да, то разобрать его на объект, в противном случае создать новый объект:
if(myStorageData) {
myStorageData = JSON.parse(myStorageData);
}
else {
myStorageData = {};
}
Наконец, установить свойство объекта, на основе ид флажка и установить хранение с новыми значениями:
myStorageData[checkbox.id] = checkbox.style.display;
localStorage.setItem('myData',JSON.stringify(myStorageData));
Чтобы изменить свой флажок, вы просто получите деталь, и установить стиль:
var myStorageData = localStorage.getItem('mydata');
document.getElementById('somecheckbox').style.display = JSON.parse(myStorageData).somecheckbox;
ПРИМЕЧАНИЯ Вы наверняка хотите, чтобы обернуть часть логики в функцию для повторного использования и сделать некоторые оборонительные кодирования перед разбором, чтобы избежать исключений.
Вот Fiddle, который в целом демонстрирует приведенный выше ответ.
- 1. Получение локального хранилища для запоминания addClass
- 2. Значения, не получающие сохранение onsubmit формы с использованием локального хранилища
- 3. Учебники для локального хранилища?
- 4. Удаление из локального хранилища с использованием javascript
- 5. отображение значения из локального хранилища
- 6. Чтение из локального хранилища с использованием jQuery
- 7. Примечание. Захват приложения с использованием локального хранилища
- 8. Кэширование файлов XAP с использованием локального хранилища
- 9. Просмотр локального хранилища с использованием angularjs
- 10. Сохранение данных с использованием локального хранилища
- 11. инструменты для локального хранилища
- 12. Запрос SPARQL с использованием локального хранилища RDF
- 13. Получение данных локального хранилища
- 14. Выбор локального хранилища Javascript - сохранить стиль CSS
- 15. Сохранить accessToken для локального хранилища с использованием паспорта-facebook
- 16. Ошибка в функции для сортируемого списка с использованием локального хранилища
- 17. с использованием локального хранилища браузера в приложении для телефонных разговоров
- 18. Извлечение значения из локального хранилища HTML5
- 19. Создание локального хранилища CPAN
- 20. База данных для локального хранилища
- 21. Чтение данных локального хранилища?
- 22. Сохранять пользователей в стиле CSS с помощью локального хранилища (как?)
- 23. Отмена значения из локального хранилища при нажатии
- 24. Использование локального хранилища для изменения фонового изображения CSS
- 25. Выход счетчика локального хранилища
- 26. Реализация локального хранилища
- 27. Хранение содержимого таблицы для локального хранилища HTML5
- 28. Проблема локального хранилища с ios7
- 29. Ошибка локального хранилища с JBoss
- 30. Настройка локального хранилища git
Где вы застряли? У вас уже есть localStorage? Вы прочитали [это] (https://developer.mozilla.org/en/docs/Web/API/Window/localStorage), чтобы начать? –
Кстати, вопросы такого типа, «лучший способ решить эту проблему», не подходят для этого сайта Q & A. Он предпочитает вопросы с сингулярными ответами, а не дискуссионные темы, аргументирующие плюсы и минусы localStorage по сравнению с другими методами, такими как куки или хранение данных на стороне сервера. –