Код предназначен для выбора css
файла для сайта.
Почему не запоминается выбор стиля и нет возможности применить стиль повторно, т.е если нажал на <li onclick="setCssTheme('theme1')"></li>
а потом на <li onclick="setCssTheme('theme2')"></li>
то первый уже не нажимается.
кнопки
<ul class="colors">
<li onclick="setCssTheme('theme1')"></li>
<li onclick="setCssTheme('theme2')"></li>
<li onclick="setCssTheme('theme3')"></li>
<li onclick="setCssTheme('theme4')"></li>
<li onclick="setCssTheme('theme5')"></li>
<li onclick="setCssTheme('theme6')"></li>
</ul>
js
// Сохранение темы в localStorage
const saveCssTheme = function (themes) {
localStorage.cssTheme = themes;
}
// Получение темы из localStorage, либо дефолтной
const getCssTheme = function () {
return localStorage.cssTheme || 'theme1';
}
// Загрузка css файла
const loadCssTheme = function (themes) {
const link = document.createElement('link');
link.id = themes;
link.type = "text/css";
link.rel = 'stylesheet';
link.href = `/css/${themes}.css`;
// если мы уже загрузили стили, то не нужно делать это еще раз
if(document.getElementById(themes)) return;
document.head.appendChild(link);
}
// Установка темы
const setCssTheme = function(themes) {
loadCssTheme(themes);
saveCssTheme(themes);
document.body.setAttribute('class', themes);
}
// Использование при загрузке страницы
document.addEventListener("load", function () {
const themes = getCssTheme();
setCssTheme(themes);
});
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Подскажите, пожалуйста, как правильнее начать изучать CMS Битрикс?
А в 1php скрипт, но он берёт id первого iframe, а нужно чтоб своего родителя: