YouTube focus player

YouTube focus player when an arrow key is pressed(exclude"textarea")

// ==UserScript==
// @name                YouTube focus player
// @description         YouTube focus player when an arrow key is pressed(exclude"textarea")
// @name:zh-TW          YT永遠聚焦在播放器
// @description:zh-TW   YT上下鍵強制聚焦在播放器(文字輸入區除外)
// @version      2.0
// @namespace    https://gf.qytechs.cn/zh-TW/users/4839
// @author       merkantilizm,hzhbest
// @license MIT
// @match        https://www.youtube.com/*
// @icon         https://www.youtube.com/favicon.ico
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // Define video element
    var video;

    // Add event listener for keydown
    window.addEventListener('keydown', function(e) {
      //文字輸入時無效
        if (checkTextArea(e.target)) return;
      // Check if arrow keys are pressed
        if (e.key === 'ArrowUp' || e.key === 'ArrowDown') {

            // Get video element (has to be done inside of the function or it doesnt work for some reason)
            video = document.querySelector('video');

            // Prevent default action of arrow keys (e.g., scrolling the page)
            e.preventDefault();
            // Focus the video player
            video.focus();
        }
    });

  function checkTextArea(node) {
    var name = node.localName.toLowerCase();
    if (name == "textarea" || name == "input" || name == "select") {
		return true;
	}
    if (name == "div" && (node.id.toLowerCase().indexOf("textarea") != -1 || node.contentEditable !== false)) {
        return true;
	}
    return false;
}

})();

QingJ © 2025

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