aio

个人实用小插件

  1. // ==UserScript==
  2. // @name aio
  3. // @namespace http://tampermonkey.net/
  4. // @version 2025-02-05
  5. // @description 个人实用小插件
  6. // @author jiejiejie
  7. // @match http://www.juquge.com/*
  8. // @match https://geek-docs.com/*
  9. // @icon https://www.google.com/s2/favicons?sz=64&domain=juquge.com
  10. // @license MIT
  11. // @grant none
  12. // ==/UserScript==
  13.  
  14. // aio.ts
  15. var aio = () => {
  16. const getCurrentUrl = () => window.location.href;
  17. const getWebSite = (url) => {
  18. let juqugeReg = /juquge/;
  19. let geekDocsReg = /geek-docs/;
  20. let coworkReg = /cowork/;
  21. if (juqugeReg.test(url)) {
  22. return "juquge";
  23. } else if (geekDocsReg.test(url)) {
  24. return "geekDocs";
  25. } else if (coworkReg.test(url)) {
  26. return "cowork";
  27. }
  28. };
  29. const DealJuquge = () => {
  30. const init = () => {
  31. };
  32. const main = () => {
  33. };
  34. init();
  35. main();
  36. };
  37. const DealGeekDocs = () => {
  38. const unlockScroll = () => {
  39. document.body.setAttribute("style", "overflow: auto");
  40. console.log("滚动条已解锁");
  41. };
  42. const deleteAds = () => {
  43. let viewAdEle = document.querySelector(".fc-message-root");
  44. viewAdEle?.parentElement?.removeChild(viewAdEle);
  45. let rightAds = document.querySelector(".tbrside");
  46. rightAds?.parentElement?.removeChild(rightAds);
  47. let bottomAds = document.querySelector(".adsbygoogle");
  48. bottomAds?.parentElement?.removeChild(bottomAds);
  49. let contentAds = document.querySelectorAll(".eaa_desktop");
  50. contentAds.forEach((item) => {
  51. item.parentElement?.removeChild(item);
  52. });
  53. console.log("广告已删除");
  54. };
  55. const fullContent = () => {
  56. let contentWrapEle = document.querySelector(".content-wrap");
  57. let contentEle = document.querySelector(".content");
  58. contentWrapEle.setAttribute("style", "margin-right: 0 !important");
  59. contentEle.setAttribute("style", "margin-right: 0 !important");
  60. console.log("文章已平铺");
  61. };
  62. const init = () => {
  63. let clearButton = document.createElement("button");
  64. clearButton.innerHTML = "清除广告";
  65. clearButton.setAttribute("style", "position: fixed; bottom: 100px; right: 0; z-index: 9999999999;");
  66. clearButton.onclick = main;
  67. document.body.appendChild(clearButton);
  68. };
  69. const main = () => {
  70. unlockScroll();
  71. deleteAds();
  72. fullContent();
  73. };
  74. init();
  75. };
  76. const DealWeixin110 = () => {
  77. };
  78. const DealCowork = () => {
  79. let fixButton = document.createElement("button");
  80. fixButton.innerHTML = "修复样式";
  81. fixButton.onclick = () => {
  82. let contentEle = document.querySelector(".box");
  83. contentEle.setAttribute("style", "width:-webkit-fill-available;height: 100%;");
  84. };
  85. let buttonForm = document.querySelector("form");
  86. buttonForm.appendChild(fixButton);
  87. };
  88. window.addEventListener("load", () => {
  89. let currentUrl = getCurrentUrl();
  90. let webSite = getWebSite(currentUrl);
  91. switch (webSite) {
  92. case "juquge":
  93. DealJuquge();
  94. break;
  95. case "geekDocs":
  96. DealGeekDocs();
  97. break;
  98. case "weixin110":
  99. break;
  100. case "cowork":
  101. DealCowork();
  102. break;
  103. default:
  104. console.log("当前页面无法处理");
  105. }
  106. });
  107. };
  108. aio();