Show transcript by default

Automatically show transcript by default

目前为 2023-11-29 提交的版本。查看 最新版本

  1. // ==UserScript==
  2. // @name Show transcript by default
  3. // @version 0.1.0
  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. // @supportURL https://github.com/bowencool/Tampermonkey-Scripts/issues
  11. // @grant none
  12. // ==/UserScript==
  13.  
  14. function waitForElementToExist(selector) {
  15. return new Promise((resolve) => {
  16. if (document.querySelector(selector)) {
  17. return resolve(document.querySelector(selector));
  18. }
  19.  
  20. const observer = new MutationObserver(() => {
  21. if (document.querySelector(selector)) {
  22. resolve(document.querySelector(selector));
  23. observer.disconnect();
  24. }
  25. });
  26.  
  27. observer.observe(document.body, {
  28. subtree: true,
  29. childList: true,
  30. });
  31. });
  32. }
  33.  
  34. (async function () {
  35. "use strict";
  36. const transcripts = await waitForElementToExist(
  37. '[target-id="engagement-panel-searchable-transcript"]'
  38. );
  39. const transcript = transcripts[0];
  40. transcript.setAttribute("visibility", "ENGAGEMENT_PANEL_VISIBILITY_EXPANDED");
  41. console.log("transcript should show up now...");
  42. })();