HTML5 video speed controller and preferred speed adjustment

HTML5 video speed controller

目前为 2021-05-04 提交的版本。查看 最新版本

  1. // ==UserScript==
  2. // @name HTML5 video speed controller and preferred speed adjustment
  3. // @namespace http://tampermonkey.net/
  4. // @version 3.0
  5. // @description HTML5 video speed controller
  6. // @author 我的名字十二个字不信你数
  7. // @include *
  8. // @grant none
  9. // ==/UserScript==
  10. (function () {
  11. 'use strict';
  12. var div = document.createElement("div");
  13. div.innerHTML = '<div id="speeddiv" style="position:fixed;left:5px;top:10px;z-index:9999999;font-size:1.5em;display:none"></div>'
  14. document.getElementsByTagName('body')[0].appendChild(div);
  15. var itime='';
  16. document.onkeydown = function (event) {
  17. if(!document.querySelector('video')) return;
  18. event = event || window.event
  19. var fg=false;
  20. if (event.keyCode == 190 && event.ctrlKey) {
  21. document.querySelector('video').playbackRate += 0.1
  22. fg=true
  23. }
  24. if (event.keyCode == 226 && event.ctrlKey) {
  25. document.querySelector('video').playbackRate -= 0.1
  26. fg=true
  27. }
  28. if (event.keyCode == 188 && event.ctrlKey) {
  29. document.querySelector('video').playbackRate = 1
  30. fg=true
  31. }
  32. if (event.keyCode == 191 && event.ctrlKey) {
  33. document.querySelector('video').playbackRate = 1.15
  34. fg=true
  35. }
  36. if (event.keyCode == 186 && event.ctrlKey) {
  37. document.querySelector('video').playbackRate = 1.333333333
  38. fg=true
  39. }
  40. if (event.keyCode == 221 && event.ctrlKey) {
  41. document.querySelector('video').playbackRate = 1.5
  42. fg=true
  43. }
  44. if(fg){
  45. if(itime!==''){
  46. clearTimeout(itime);
  47. }
  48. document.getElementById('speeddiv').style.display='block'
  49. document.getElementById('speeddiv').innerHTML='speed:'+document.querySelector('video').playbackRate.toFixed(2)
  50. itime=setTimeout(function(){
  51. document.getElementById('speeddiv').style.display='none'
  52. },2000)
  53. }
  54. }
  55. // Your code here...
  56. })();