You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

styleswitcher.js 810 B

123456789101112131415161718192021222324252627
  1. const baseUrl = document.getElementById("docfx-style:rel").content;
  2. var themeElement;
  3. function onThemeSelect(event) {
  4. const theme = event.target.value;
  5. window.localStorage.setItem("theme", theme);
  6. window.themeElement.href = getUrl(theme);
  7. }
  8. function getUrl(slug) {
  9. return baseUrl + "styles/" + slug + ".css";
  10. }
  11. const themeElement = document.createElement("link");
  12. themeElement.rel = "stylesheet";
  13. const theme = window.localStorage.getItem("theme") || "light";
  14. themeElement.href = getUrl(theme);
  15. document.head.appendChild(themeElement);
  16. window.themeElement = themeElement;
  17. document.addEventListener("DOMContentLoaded", function() {
  18. const themeSwitcher = document.getElementById("theme-switcher");
  19. themeSwitcher.onchange = onThemeSelect;
  20. themeSwitcher.value = theme;
  21. }, false);