vitalso78,
и такой вариант строка 8 href оставить пустым строка 9 ставить сразу после link строка 16 в любое место. строка 39 убрать class switch-on
<!DOCTYPE html>
<html>
<head>
<title>css localStorage</title>
<meta charset="UTF-8" />
<base href="https://delivery.foodsonic.ru/" />
<link rel="stylesheet" href="" id="theme-css-file" />
<script>
let CssFilePath = localStorage.getItem("CssFilePath")||"https://delivery.foodsonic.ru/light.css";
const styleElement = document.querySelector("#theme-css-file");
styleElement.href = CssFilePath;
</script>
<script>
document.addEventListener("DOMContentLoaded", function() {
const styleElement = document.querySelector("#theme-css-file");
const button = document.querySelector("#SuperButton");
let CssFilePath = localStorage.getItem("CssFilePath");
if (CssFilePath) {
if (CssFilePath.indexOf("dark.css") !== -1) button.classList.add("switch-on");
else button.classList.remove("switch-on");
}
button.addEventListener("click", function() {
let href = "https://delivery.foodsonic.ru/light.css";
button.classList.toggle("switch-on");
if (button.classList.contains("switch-on")) href = "https://delivery.foodsonic.ru/dark.css";
styleElement.href = href;
localStorage.setItem("CssFilePath", href);
})
});
</script>
</head>
<body>
<div>Switch theme:</div>
<div class="switch-btn" id="SuperButton" name="SuperButton">SuperButton</div>
</body>
</html>
|
обновить и скопировать )))
|
рони, а зачем div'у в 39-й строке атрибут name?
|
Цитата:
|
Вообщем вот что у меня получилось https://delivery.foodsonic.ru/, благодаря вам конечно
|
vitalso78,
смотрите #31, "лишняя" подгрузка стилей в начале, должна исчезнуть. |
Цитата:
|
vitalso78,
строка 43 <link rel="stylesheet" href="/light.css" id="theme-css-file" /> выделенное удалить должно стать так
<link rel="stylesheet" href="" id="theme-css-file" />
<script>
let CssFilePath = localStorage.getItem("CssFilePath")||"/light.css";
const styleElement = document.querySelector("#theme-css-file");
styleElement.href = CssFilePath;
</script>
</head>
|
Ага, спасибо
|
Забыл вчера рассказать. Так как сайт на Битриксе,- изложил проблему у них на форуме. С начала неделю ждал, тишина, вообще никого. Потом всё таки кто то ответил. Изложил такую инструкцию,- охиреешь. Что бы сделать вот такой переключатель , надо обернуться вокруг себя три раза, свистнуть 28 раз, подпрыгнуть 234 раза, и стучать в бубен пока не заработает код. Даже пример не привели. Геморой страшный. У вас же сделал за 30 минут.
|
| Часовой пояс GMT +3, время: 20:40. |