#css #asp.net-mvc #bootstrap-4
#css #asp.net-mvc #bootstrap-4
Вопрос:
Я создаю веб-приложение и хотел бы предоставить пользователю возможность переключать тему с оригинальной на тему в темном режиме.
У меня есть два разных файла .css, один для оригинальной темы и один для темного режима, но я не знаю, как реализовать такую кнопку.
На данный момент у меня есть функция:
function updateStyleSheet(filename) {
newstylesheet = "Content/" filename ".css";
if ($("#dynamic_css").length == 0) {
$("head").append("<link>")
css = $("head").children(":last");
css.attr({
id: "dynamic_css",
rel: "stylesheet",
type: "text/css",
href: newstylesheet
});
} else {
$("#dynamic_css").attr("href", newstylesheet);
}
}
И я называю это использованием:
<input type="button" onclick="updateStyleSheet('bootstrap-SUPERHER')" value="Dark Mode">
Однако, когда я перехожу на другую страницу, тема возвращается к исходной. Как мне сделать это постоянным?
Любая помощь высоко ценится.
Комментарии:
1. Что вы уже пробовали?
2. @ColbyBoren Я обновил вопрос с учетом моего прогресса.
3. Вам нужно будет сохранить этот «выбор» на клиенте (например, Web Storage API ), проверить наличие этой «сохраняемой переменной» и получить ее значение, если таковое имеется, в противном случае некоторое «значение по умолчанию». Это было бы глобальным (для всех ваших страниц), так что
_Layout.cshtml
скорее всего, к чему это приведет.