Remove temporary elements For SingleFile.

Remove temporary elements added by browser extensions.

  1. // ==UserScript==
  2. // @name Remove temporary elements For SingleFile.
  3. // @version 0.0.1
  4. // @description Remove temporary elements added by browser extensions.
  5. // @author fengqi
  6. // @license MIT
  7. // @match *://*/*
  8. // @grant none
  9. // @namespace https://greasyfork.org/users/745108
  10. // ==/UserScript==
  11.  
  12. (() => {
  13. const elements = new Map();
  14. const keys = ["__hcfy__", "immersive-translate-popup"];
  15.  
  16. dispatchEvent(new CustomEvent("single-file-user-script-init"));
  17.  
  18. addEventListener("single-file-on-before-capture-request", () => {
  19. Array.from(keys).forEach((item, index) => {
  20. var element = document.getElementById(item)
  21. var placeHolderElement = document.createElement(element.tagName);
  22.  
  23. elements.set(placeHolderElement, element);
  24. element.parentElement.replaceChild(placeHolderElement, element);
  25. });
  26. });
  27.  
  28. addEventListener("single-file-on-after-capture-request", () => {
  29. Array.from(elements).forEach(([placeHolderElement, element]) => {
  30. placeHolderElement.parentElement.replaceChild(element, placeHolderElement);
  31. });
  32. elements.clear();
  33. });
  34.  
  35. })();