V2EX Auto Dark Mode

Turn on/off dark mode automatically in v2ex.com based on the color scheme of OS.

  1. // ==UserScript==
  2. // @name V2EX Auto Dark Mode
  3. // @name:zh-CN V2EX 自动切换深色模式
  4. // @namespace http://tampermonkey.net/
  5. // @version 0.2
  6. // @description Turn on/off dark mode automatically in v2ex.com based on the color scheme of OS.
  7. // @description:zh-CN 根据系统配色自动开启/关闭 v2ex.com 的深色模式
  8. // @author Jiachen Chen
  9. // @match *://*.v2ex.com/*
  10. // @match *://v2ex.com/*
  11. // @icon https://www.google.com/s2/favicons?domain=v2ex.com
  12. // @grant none
  13. // ==/UserScript==
  14.  
  15. (function () {
  16. "use strict";
  17.  
  18. const toggleLink = document
  19. .querySelector(".light-toggle")
  20. .getAttribute("href");
  21.  
  22. if (
  23. window.matchMedia &&
  24. window.matchMedia("(prefers-color-scheme: light)").matches
  25. ) {
  26. if (SITE_NIGHT) {
  27. window.location.replace(toggleLink);
  28. }
  29. }
  30.  
  31. window
  32. .matchMedia("(prefers-color-scheme: light)")
  33. .addEventListener("change", (e) => {
  34. if (SITE_NIGHT) {
  35. window.location.replace(toggleLink);
  36. }
  37. });
  38.  
  39. if (
  40. window.matchMedia &&
  41. window.matchMedia("(prefers-color-scheme: dark)").matches
  42. ) {
  43. if (SITE_NIGHT === 0) {
  44. window.location.replace(toggleLink);
  45. }
  46. }
  47.  
  48. window
  49. .matchMedia("(prefers-color-scheme: dark)")
  50. .addEventListener("change", (e) => {
  51. if (SITE_NIGHT === 0) {
  52. window.location.replace(toggleLink);
  53. }
  54. });
  55. })();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址