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 792 B

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