Skip to content

Commit 96360c7

Browse files
committed
added theme switch stuff but hisdd them
1 parent b519ed6 commit 96360c7

File tree

8 files changed

+83
-259
lines changed

8 files changed

+83
-259
lines changed

_config.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,10 @@ gh_edit_branch: "main" # the branch that your docs is served from
9999
gh_edit_view_mode: "edit" # "tree" or "edit" if you want the user to jump into the editor immediately
100100

101101
# Color scheme supports "light" (default) and "dark"
102+
color_schemes:
103+
- light
104+
- dark
105+
102106
color_scheme: light
103107

104108
# Define Jekyll collections

_includes/header_custom.html

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,20 @@
33
<div class="lang-switcher">
44
{%- include lang-switcher.html -%}
55
</div>
6-
</nav> -->
6+
</nav> -->
7+
8+
<!-- <nav aria-label="Theme Switcher" class="theme-switcher-nav"></nav>
9+
<div class="theme-switcher">
10+
<button id="theme-toggle">☾|☼</button>
11+
<script>const toggleDarkMode = document.querySelector('.js-toggle-dark-mode');
12+
jtd.addEvent(toggleDarkMode, 'click', function(){
13+
if (jtd.getTheme() === 'dark') { jtd.setTheme('light');
14+
toggleDarkMode.textContent = '☾'; }
15+
else { jtd.setTheme('dark');
16+
toggleDarkMode.textContent = '☼'; } });
17+
</script>
18+
</div>
19+
</nav>
20+
21+
<script src="{{ '/assets/js/theme-toggle.js' | relative_url }}"></script> -->
22+

_includes/theme-switcher.html

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{% if site.color_schemes %}
2+
{% assign current_theme = site.active_theme | default: 'light' %}
3+
<div class="theme-switcher">
4+
{% for theme in site.color_schemes %}
5+
{% if theme == current_theme %}
6+
<span>{{ ☼ }}</span>
7+
{% else %}
8+
<a href="#" class="js-toggle-theme" data-theme="{{ theme }}">{{ ☾ }}</a>
9+
{% endif %}
10+
{% endfor %}
11+
</div>
12+
{% endif %}

_site/about/index.html

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

_site/index.html

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

assets/js/theme-switcher.js

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
2+
const toggleDarkMode = document.querySelector('.js-toggle-dark-mode');
3+
jtd.addEvent(toggleDarkMode, 'click', function(){
4+
if (jtd.getTheme() === 'dark') { jtd.setTheme('light');
5+
toggleDarkMode.textContent = '☾'; }
6+
else { jtd.setTheme('dark');
7+
toggleDarkMode.textContent = '☼'; } });
8+
9+
10+
document.addEventListener("DOMContentLoaded", function () {
11+
const toggleButton = document.getElementById("theme-switcher");
12+
const currentTheme = localStorage.getItem("theme") || "light";
13+
14+
// Apply the saved theme
15+
document.documentElement.setAttribute("data-theme", currentTheme);
16+
17+
toggleButton.addEventListener("click", () => {
18+
const newTheme = document.documentElement.getAttribute("data-theme") === "light" ? "dark" : "light";
19+
20+
// Apply and save the new theme
21+
document.documentElement.setAttribute("data-theme", newTheme);
22+
localStorage.setItem("theme", newTheme);
23+
});
24+
});
25+
26+
document.addEventListener('DOMContentLoaded', function () {
27+
const toggleDarkMode = document.querySelector('.js-toggle-dark-mode');
28+
29+
// Load the saved theme from localStorage
30+
const savedTheme = localStorage.getItem('theme') || 'light';
31+
jtd.setTheme(savedTheme);
32+
toggleDarkMode.textContent = savedTheme === 'dark'
33+
? 'Return to the light side'
34+
: 'Preview dark color scheme';
35+
36+
// Toggle theme on button click
37+
jtd.addEvent(toggleDarkMode, 'click', function () {
38+
const currentTheme = jtd.getTheme();
39+
const newTheme = currentTheme === 'dark' ? 'light' : 'dark';
40+
jtd.setTheme(newTheme);
41+
toggleDarkMode.textContent = newTheme === 'dark'
42+
? 'Return to the light side'
43+
: 'Preview dark color scheme';
44+
45+
// Save the theme to localStorage
46+
localStorage.setItem('theme', newTheme);
47+
});
48+
});

assets/js/theme.js

Lines changed: 0 additions & 252 deletions
This file was deleted.

overview/index.en.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,6 @@ lang: en
1111

1212
---
1313

14-
Preview dark color scheme
15-
16-
<script> const toggleDarkMode = document.querySelector('.js-toggle-dark-mode'); jtd.addEvent(toggleDarkMode, 'click', function(){ if (jtd.getTheme() === 'dark') { jtd.setTheme('light'); toggleDarkMode.textContent = 'Preview dark color scheme'; } else { jtd.setTheme('dark'); toggleDarkMode.textContent = 'Return to the light side'; } }); </script>
17-
1814
# **Learn**
1915
{: .lh-0 .text-purple-200}
2016
# Everything you need to know about building a satellite with a guide to take you step-by-step.

0 commit comments

Comments
 (0)