У меня есть этот кусок кода:
$(document).ready(function() {
$(".lightDark").hide();
$("#changeTheme").click(function() {
$(".lightDark").toggle("slow");
});
// Switch theme
$('#lightTheme').click(function() {
$('link[href="darkMode.css"]').attr('href','lightMode.css');
});
$('#darkTheme').click(function() {
$('link[href="lightMode.css"]').attr('href','darkMode.css');
});
});
body {
background-color: black;
}
.changeThemeButtons {
float: right;
margin-top: 50px;
margin-right: 50px;
border:2px solid white;
border:none;
color:white;
}
.changeThemeButtons td {
font-family: 'Open Sans Condensed', sans-serif;
font-size: 1.6em;
text-transform: uppercase;
color:white;
text-align: center;
}
.changeThemeButtons th {
background-color: #733FFF;
border-radius: 100px;
height:200px;
width:200px;
}
#changeTheme {
cursor: pointer;
}
#changeTheme i {
color:#f00;
}
#darkTheme {
color:black;
margin-right: 50px;
}
#lightTheme {
color:white;
}
<script src="https://kit.fontawesome.com/c22b2f5999.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" id="darkMode" href="darkMode.css">
<div class="block two">
<nav>
<a href="#about">About me</a>
<a href="#myWork">My Work</a>
<a href="#services">Services</a>
<a href="#contact">Contact</a>
</nav>
<table class="changeThemeButtons" align="right">
<tr>
<td><a id="changeTheme">Change Theme <i class="fas fa-caret-down"></i></a></td>
</tr>
<tr>
<th class="lightDark">
<a href="#" id="darkTheme"><i class="fas fa-circle fa-3x"></i></a>
<a href="#" id="lightTheme"><i class="fas fa-circle fa-3x"></i></a>
</th>
</tr>
</table>
Все отлично работает, до того момента, когда вы находитесь в режиме lightMode. css и, скажем, вы обновили sh страницу, затем он будет сброшен к darkMode. css. Я пытался удалить defaultMode по умолчанию. css из HTML (с JQuery), но, похоже, он не работает. Мне нужно, чтобы он оставался в режиме LightMode (если он выбран), пока вы не нажмете снова, чтобы переключиться на DarkMode вручную.