泛雅网络教学刷课倍速播放自动播放下一节

泛雅网络教学刷课倍速播放自动播放下一节,点开某一节课后点击上方16倍速播放视频按钮进入连续16倍速播放视频。

  1. // ==UserScript==
  2. // @name 泛雅网络教学刷课倍速播放自动播放下一节
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.1
  5. // @description 泛雅网络教学刷课倍速播放自动播放下一节,点开某一节课后点击上方16倍速播放视频按钮进入连续16倍速播放视频。
  6. // @icon https://www.zcloud.cool/favicon.ico
  7. // @author zjw
  8. // @match *://*.mooc1.chaoxing.com/mycourse/studentstudy*
  9. // @grant none
  10. // ==/UserScript==
  11.  
  12. (function () {
  13. 'use strict';
  14.  
  15. //初始化变量
  16. var Catalog = [], //目录树
  17. currentIndex //当前播放的视频索引
  18.  
  19. //生成目录树方法
  20. var initCatalog = function () {
  21. var aNodeList = document.querySelectorAll('.cells .ncells h4 a')
  22. Array.prototype.forEach.call(aNodeList, function (item, index) {
  23. Catalog.push(item)
  24. })
  25. console.log(Catalog)
  26. }
  27.  
  28. //获取当前播放视频索引
  29. var initCurrentIndex = function () {
  30. var h4NodeList = document.querySelectorAll('.cells .ncells h4')
  31. Array.prototype.forEach.call(h4NodeList, function (item, index) {
  32. if (item.className == 'currents') {
  33. currentIndex = index
  34. console.log('当前视频播放索引', currentIndex, item)
  35. }
  36. })
  37. }
  38.  
  39. //查找视频并设置为16倍速播放
  40. var playVideo = function () {
  41. console.log('查找视频并设置为16倍速播放')
  42. var parentIframe = document.querySelector('#iframe')
  43. var parentIframeConent = parentIframe.contentWindow.document
  44. var videoIframe = parentIframeConent.querySelector('iframe')
  45. var videoIframeConent = videoIframe.contentWindow.document
  46. // var playBtn = videoIframeConent.querySelector('.vjs-big-play-button'),
  47. var videoObj = videoIframeConent.querySelector('#video_html5_api')
  48. videoObj.play()
  49. videoObj.playbackRate = 16
  50. videoObj.addEventListener('ended', function () { //结束
  51. var logConsole = Catalog[currentIndex].title
  52. console.log(logConsole+"播放结束,继续播放下一节");
  53. playNextVideo()
  54. }, false);
  55. }
  56. var playNextVideo = function(){
  57. //视频索引增长
  58. currentIndex++
  59. //播放下一节
  60. Catalog[currentIndex].click()
  61. setTimeout(playVideo,3000)
  62. }
  63.  
  64. //生成16倍速视频播放按钮
  65. var addButton = function () {
  66. var mybtn = document.createElement('div')
  67. mybtn.innerText = '16倍播放视频'
  68. mybtn.style.position = 'fixed'
  69. mybtn.style.top = '6px'
  70. mybtn.style.left = '40%'
  71. // mybtn.style.transform = 'translateX(-50%)'
  72. mybtn.style.width = '80px'
  73. mybtn.style.padding = '8px'
  74. mybtn.style.background = '#479296'
  75. mybtn.style.color = '#fff'
  76. mybtn.style.cursor = 'pointer'
  77. mybtn.style.boxShadow = '0 0 4px #808080'
  78. mybtn.style.borderRadius = '5px'
  79. document.querySelector('body').appendChild(mybtn);
  80. mybtn.addEventListener('click', playVideo)
  81. }
  82. window.onload = function () {
  83. addButton()
  84. initCatalog()
  85. initCurrentIndex()
  86. }
  87. })();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址