episodes dropdown for vidcloud9.com

dropdown adds a dropdown menu to navigate between episodes faster

  1. // ==UserScript==
  2. // @name episodes dropdown for vidcloud9.com
  3. // @description dropdown adds a dropdown menu to navigate between episodes faster
  4. // @match https://vidcloud9.com/videos/*
  5. // @version 0.0.1.20210801224626
  6. // @namespace https://greasyfork.org/users/798407
  7. // ==/UserScript==
  8.  
  9. let vidLeft = document.querySelector(".video-info-left");
  10. let videoElem = document.querySelector(".watch_play");
  11. let episodesUrls = new Array();
  12. let episodesRaw = document.querySelector(".lists").querySelectorAll("a");
  13. episodesRaw.forEach(function (e, i) {
  14. episodesUrls[i] = e.href;
  15. });
  16. episodesUrls.reverse();
  17. let currentEpisode = episodesUrls.indexOf(window.location.href);
  18. let select = document.createElement("select");
  19. function createOptions(url, i) {
  20. let option = document.createElement("option");
  21. option.value = url;
  22. option.text = "Episode " + (i + 1);
  23. if (i === currentEpisode) option.selected = "selected";
  24. return option;
  25. };
  26. episodesUrls.forEach(function (e, i) {
  27. select.add(createOptions(e, i), null);
  28. });
  29. let br = document.createElement("br");
  30. vidLeft.insertBefore(br, videoElem);
  31. vidLeft.insertBefore(select, videoElem);
  32. select.addEventListener("change", function () {
  33. window.location.href = select.value;
  34. });