视频和歌曲播放速度控制

通过按钮调整网页上视频和歌曲的播放速度,默认速度为0.8,并显示当前速度

  1. // ==UserScript==
  2. // @name 视频和歌曲播放速度控制
  3. // @namespace http://tampermonkey.net/
  4. // @version 1.1.2
  5. // @description 通过按钮调整网页上视频和歌曲的播放速度,默认速度为0.8,并显示当前速度
  6. // @author 你的名字
  7. // @match *://*/*
  8. // @grant none
  9. // ==/UserScript==
  10.  
  11. (function() {
  12. 'use strict';
  13.  
  14. // 默认播放速度
  15. let defaultSpeed = 0.8;
  16. // 速度步长
  17. let speedStep = 0.1;
  18.  
  19. // 创建控制按钮
  20. function createControlButton(text, onClick, top) {
  21. let button = document.createElement('button');
  22. button.textContent = text;
  23. button.style.position = 'fixed';
  24. button.style.right = '10px';
  25. button.style.top = top + 'px';
  26. button.style.zIndex = '1000';
  27. button.style.fontSize = '20px';
  28. button.style.padding = '10px';
  29. button.onclick = onClick;
  30. return button;
  31. }
  32.  
  33. // 当前速度
  34. let currentSpeed = defaultSpeed;
  35.  
  36. // 显示当前速度按钮
  37. let speedDisplayButton = createControlButton(`速度: ${currentSpeed.toFixed(1)}`, function() {}, 150);
  38. document.body.appendChild(speedDisplayButton);
  39.  
  40. // 设置播放速度
  41. function setPlaybackSpeed(speed) {
  42. currentSpeed = Math.max(0.1, speed); // 最低速度为0.1
  43. let mediaElements = document.querySelectorAll('video, audio');
  44. mediaElements.forEach(function(media) {
  45. media.playbackRate = currentSpeed;
  46. });
  47. speedDisplayButton.textContent = `速度: ${currentSpeed.toFixed(1)}`;
  48. }
  49.  
  50. // 增加速度按钮
  51. let increaseButton = createControlButton('+', function() {
  52. setPlaybackSpeed(currentSpeed + speedStep);
  53. }, 50);
  54. document.body.appendChild(increaseButton);
  55.  
  56. // 减少速度按钮
  57. let decreaseButton = createControlButton('-', function() {
  58. setPlaybackSpeed(currentSpeed - speedStep);
  59. }, 100);
  60. document.body.appendChild(decreaseButton);
  61.  
  62. // 重置速度按钮
  63. let resetButton = createControlButton('重置', function() {
  64. setPlaybackSpeed(defaultSpeed);
  65. }, 200);
  66. document.body.appendChild(resetButton);
  67.  
  68. // 初始化播放速度
  69. function initPlaybackSpeed() {
  70. setPlaybackSpeed(defaultSpeed);
  71. }
  72.  
  73. // 等待页面加载完成后初始化
  74. window.addEventListener('load', initPlaybackSpeed);
  75. })();

QingJ © 2025

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