Show transcript by default

Automatically show transcript by default

当前为 2023-11-29 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name Show transcript by default
  3. // @version 0.1.2
  4. // @description Automatically show transcript by default
  5. // @namespace https://youtube.com/
  6. // @match https://www.youtube.com/watch*
  7. // @icon https://www.google.com/s2/favicons?sz=64&domain=youtube.com
  8. // @author bowencool
  9. // @license MIT
  10. // @homepageURL https://greasyfork.org/scripts/480993
  11. // @supportURL https://github.com/bowencool/Tampermonkey-Scripts/issues
  12. // @grant none
  13. // ==/UserScript==
  14.  
  15. function waitForElementToExist(selector) {
  16. return new Promise((resolve) => {
  17. if (document.querySelector(selector)) {
  18. return resolve(document.querySelector(selector));
  19. }
  20.  
  21. const observer = new MutationObserver(() => {
  22. if (document.querySelector(selector)) {
  23. resolve(document.querySelector(selector));
  24. observer.disconnect();
  25. }
  26. });
  27.  
  28. observer.observe(document.body, {
  29. subtree: true,
  30. childList: true,
  31. });
  32. });
  33. }
  34.  
  35. (async function () {
  36. "use strict";
  37. const transcript = await waitForElementToExist(
  38. '[target-id="engagement-panel-searchable-transcript"]'
  39. );
  40. transcript.setAttribute("visibility", "ENGAGEMENT_PANEL_VISIBILITY_EXPANDED");
  41. console.log("transcript should show up now...");
  42. })();