YouTube Volume and Time Mouse Controlled

Volume/Time mouse control for Youtube

2024-12-20 या दिनांकाला. सर्वात नवीन आवृत्ती पाहा.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey, Greasemonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्क्रिप्ट व्यवस्थापक एक्स्टेंशन इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्क्रिप्ट व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्टाईल व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

// ==UserScript==
// @name         YouTube Volume and Time Mouse Controlled
// @namespace    PoKeRGT
// @version      1.03
// @icon         https://www.google.com/s2/favicons?sz=64&domain=youtube.com
// @description  Volume/Time mouse control for Youtube
// @author       PoKeRGT
// @match        https://www.youtube.com/watch*
// @grant        none
// @homepageURL  https://github.com/PoKeRGT/userscripts
// @license      MIT
// ==/UserScript==

var videoElement = document.getElementById('movie_player');

function volumeControl(event) {
  if (event.deltaY > 0) { // mouse wheel up
    videoElement.setVolume(videoElement.getVolume() - 5);
  } else { // mouse wheel down
    videoElement.setVolume(videoElement.getVolume() + 5);
  }
  console.log(videoElement.getVolume());
}

function timeControl(event) {
  if (event.deltaY > 0) { // mouse wheel up
    videoElement.seekToStreamTime(videoElement.getCurrentTime() - 5);
  } else { // mouse wheel down
    videoElement.seekToStreamTime(videoElement.getCurrentTime() + 5);
  }
  console.log(videoElement.getCurrentTime());
}

document.addEventListener('wheel', function (event) {
  var rect = videoElement.getBoundingClientRect();
  if (event.clientX > rect.left && event.clientX < rect.right &&
    event.clientY > rect.top && event.clientY < rect.bottom) {
    cancelScroll(event);
    if (event.clientX < window.innerWidth / 2) { // left half of the screen
      volumeControl(event);
    }
    else { // right half of the screen
      timeControl(event);
    }
  }
}, { passive: false });

function cancelScroll(event) {
  event.preventDefault();
}