其他
B站视频播放快捷键控制
18 项功能,为网页视频播放添加倍速播放、画中画、截图、进度保存等,全程高能快捷键[油猴脚本] – 小众软件 HTML5视频播放器增强脚本
为了适配多个网站,导致代码量巨大,会把网页拖慢。
快捷键众多(不是自己设置的)记不住。
按键冲突,不是自己设置的键,容易与其它设置相冲突
「B」:弹幕开关 「M」:静音/取消静音 「/」:定位搜索栏 「C」:字幕开关 「K」:暂停播放 / 恢复播放(默认为空格键,但视频播放器没有获得焦点时,空格键默认行为是向下翻页,所以新增加了K键) 「<」与「>」:改变视频播放速度,如:0.5、0.25、正常、1.25、1.5、2 「+」与「-」:同上 「[」与「]」:播放上一集或下一集(有些视频是个播放列表,俗称分P)
「G」:视频点赞(未能实现一键三连的功能,哪位帅气的小伙帮我来实现?)
// ==UserScript==
// @name B站视频播放快捷键
// @namespace http://tampermonkey.net/
// @version 1.0
// @description B站视频快捷键播放
// @author 码中人 http://www.mzh.ren
// @match *://*.bilibili.com/*
// @grant none
// ==/UserScript==
(function () {
let $ = document.querySelector.bind(document);
function showControlBar() {
$('.bilibili-player-area').classList.add('video-control-show')
}
function startOrPause() {
$('.bilibili-player-video-btn').click();
}
function buiSwitch() {
const buiBtn = $('input[type="checkbox"].bui-switch-input');
// buiBtn.checked = !buiBtn.checked;
buiBtn.click();
}
function subtitle() {
const subtitleBtn = $('.bilibili-player-iconfont-subtitle');
subtitleBtn.click();
}
function fullScreen() {
const fsBtn = $('.bilibili-player-video-web-fullscreen button');
fsBtn.click();
}
function episode(forward){
const currentEpisodeItem = $('.bilibili-player-video-btn-pagelist .bilibili-player-active');
if (forward) {
currentEpisodeItem.previousSibling?.click?.();
} else {
currentEpisodeItem.nextSibling?.click?.();
}
}
function volumnSwitch() {
const volumnBtn = $('.bilibili-player-video-btn-volume button');
volumnBtn.click();
}
function searchFocus(){
const searchInput = $('.nav-search-keyword');
searchInput.focus()
}
function playSpeed(forward) {
const currentSpeedItem = $('.bilibili-player-video-btn-speed .bilibili-player-active');
if (forward) {
currentSpeedItem.previousSibling?.click?.();
} else {
currentSpeedItem.nextSibling?.click?.();
}
}
function nextEpisode(){
episode(true)
}
function prevEpisode(){
episode();
}
function fast() {
playSpeed(true)
}
function slow() {
playSpeed(false)
}
function like(){
const likeBtn = $('.ops .like');
likeBtn.click();
}
const KEYS_HANDLERS = {
'KeyB': buiSwitch,
'KeyM': volumnSwitch,
'KeyK': startOrPause,
'Comma': slow,
'Period': fast,
'BracketRight':nextEpisode,
'BracketLeft':prevEpisode,
'Equal': fast,
'Minus': slow,
'Slash':searchFocus,
'KeyC': subtitle,
'KeyG':like
}
document.addEventListener('keyup', (e) => {
console.log(e.code)
KEYS_HANDLERS[e.code]?.();
showControlBar();
})
})()
往期推荐