Desabilitando a Barra de Espaço para Rolagem no YouTube: Um Guia Prático
A tecla de espaço em um navegador tem uma dupla função: em páginas web comuns, ela desloca a página para baixo; no YouTube, ela atua como um botão de reprodução/pausa de vídeos. Se você utiliza a barra de espaço para navegar e considera essa função mais prática do que a rolagem com dois dedos ou a roda do mouse, a interrupção da pausa/reprodução de vídeos no YouTube pode não ser um problema. Contudo, caso ache o comportamento da barra de espaço no YouTube incômodo, é possível desabilitá-lo. Veja como fazer.
O atalho de rolagem de página pela barra de espaço é implementado no próprio navegador, e nem mesmo o Firefox oferece uma opção nativa para desativá-lo. Para conseguir isso, é necessário recorrer a um script. A execução de scripts requer um complemento ou extensão. Portanto, navegadores sem suporte a extensões não poderão se beneficiar desse método.
Se o seu navegador permite o uso de extensões ou a execução de scripts de usuário, você já está pronto para começar. Usuários do Firefox podem utilizar o Greasemonkey, enquanto usuários do Chrome podem instalar o Tampermonkey (links fornecidos no final).
Após configurar a ferramenta para executar o script, adicione o seguinte código:
// ==UserScript==
// @name Disable space bar scrolling
// @namespace Disable Space bar scroll
// @version 0.1
// @description disable space bar scroll
// @author Space bar scroll
// @match https://www.youtube.com/*
// @grant none
// ==/UserScript==
(function() {
var k = function(action){
var eventObj = document.createEvent("Events");
eventObj.initEvent("keydown", true, true);
eventObj.keyCode = 75;
eventObj.which = 75;
document.body.dispatchEvent(eventObj);
};
var killSpaceBar = function(evt) {
var target = evt.target || {},
isInput = ("INPUT" == target.tagName || "TEXTAREA" == target.tagName || "SELECT" == target.tagName || "EMBED" == target.tagName);
// if we're an input or not a real target exit
if(isInput || !target.tagName) return;
// if we're a fake input like the comments exit
if(target && target.getAttribute && target.getAttribute('role') === 'textbox') return;
// ignore the space and send a 'k' to pause
if (evt.keyCode === 32) {
evt.preventDefault();
k();
}
};
document.addEventListener("keydown", killSpaceBar, false);
})();
Em alguns casos, pode ser necessário reiniciar o navegador, especialmente no Firefox. Após recarregar o YouTube, o script impedirá que a barra de espaço cause a rolagem da página para baixo.