Greasy Fork

Greasy Fork is available in English.

视频网站自动网页全屏|倍速播放

支持哔哩哔哩、B站直播、腾讯视频、优酷视频、爱奇艺、芒果TV、搜狐视频、AcFun弹幕网自动网页全屏;快捷键切换:全屏(F)、网页全屏(P)、下一个视频(N)、弹幕开关(D);支持任意视频倍速播放,提示记忆倍速;B站播放完自动退出网页全屏和取消连播。

当前为 2025-01-20 提交的版本,查看 最新版本

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

作者
Feny
评分
0 0 0
版本
2.4.2
创建于
2024-12-05
更新于
2025-01-20
大小
20.5 KB
许可证
GPL-3.0-only
适用于

使用脚本前

建议先在浏览器上安装 uBlock OriginAdGuard 扩展,可有效移除视频网站的视频广告。

脚本初衷

个人比较喜欢使用网页全屏进行视频观看,B站视频看完会退出看看评论,又懒得每次都要鼠标滑动点击,基于此需求编写了该脚本。

快捷键

F:切换全屏
P:切换网页全屏
N:下一个视频
D:弹幕开/关
A+:倍速 +0.25
S-:倍速 -0.25
Z:恢复正常倍速
数字 1-91-9 倍速
符号 *:重新绑定事件到新的video,多视频页(如抖音、快手网页版)设置倍速时使用。

Tips:可以修改对应的代码,定义为自己喜欢的快捷键。存在快捷键冲突请自行修改。

关于自动网页全屏

如果不需要打开视频播放页自动网页全屏。可在脚本中找到代码,注释掉:

if (video?.play && element) this.webFullScreen() && observer.disconnect();

注释掉不会影响快捷键网页全屏(P)切换。

关于自动退出网页全屏

脚本默认对B站和AcFun弹幕网视频播放完自动退出全屏(番剧页不支持)。

B站视频播放完自动点击“取消连播”按钮;如果是视频合集会判断是否为最后分P或关闭了合集“自动连播”,是的话自动退出网页全屏。

如不需要该功能,可将脚本中下面注释的代码放开:

// if (/[a-zA-z]+:\/\/[^\s]*/.test(href)) return;

关于倍速

使用本脚本设置了倍速,再想切换回使用网站自带的倍速设置,需要先还原为正常倍速,不然网站自带的是不起作用的。

相较于 Greasy Fork 上的其他视频倍速播放脚本,本脚本解决了以下问题:

  1. 解决爱奇艺播放一段时间会恢复正常倍速问题。
  2. 对于自动播放且视频在<iframe>中,不需要聚焦到视频元素上也可以设置倍速。
  3. 多视频页面如抖音网页版,切换新视频时,如果鼠标有悬停在视频上方自动应用记忆倍速,没有悬停的话,可以使用*快捷键应用记忆倍速。

本脚本的倍速设置默认是不匹配所有网页的

需要的话可将脚本中的:

// @note        *://*/*

改成:

// @match        *://*/*

或只对特定网站@match,如百度网盘

// @match        *://pan.baidu.com/*

默认倍速步进为±0.25,不满足需求?

// 修改为喜欢的
PLAY_RATE_STEP: 0.25

默认倍速提示时长5秒,觉得太久?

// 修改为喜欢的
SHOW_TOAST_TIME: ONE_SECOND * 5

默认倍速提示处于视频的左下方,可选居中提示。

// 修改为居中提示
SHOW_TOAST_POSITION: positions.center

原理

利用 HTML5 video 对象 playbackRate 属性来设置播放速度,最高16倍播放(浏览器限制)。

页面上没有video标签是无法应用倍速的,如迅雷云盘

网站适配性

本脚本理论上对所有网页,有video标签都能够进行倍速播放。某些网站会限定最高倍速。

其他功能

脚本实现了页面可见性监听,当视频播放标签页不可见时会暂停播放,可见时继续播放。

如不需要该功能的话,把下面的代码注释掉:

this.setupVisibleListener();

自定义快捷键功能

懒得滑动鼠标,想实现对网页上的某个元素通过快捷键点击?

示例

如对B站定义字幕开关(T)快捷键。

配置selectorConfig

const selectorConfig = {
    "www.bilibili.com": {
        subtitle: ".bpx-player-ctrl-subtitle .bpx-common-svg-icon", // 新增的自定义快捷键有效点击元素
    }
}

找到execHotKeyActions方法,在actions中新增:

const actions = {
    T: () => clickElement("subtitle"), // 新增的自定义快捷键,"subtitle"为selectorConfig配置的key值
};

实验性扩展功能

使用 视频网页全屏(改) 脚本时,需要鼠标悬停到视频上方,才可以按esc键进行网页全屏。

使用本脚本可以按P键直接网页全屏,无需滑动鼠标,对某些自动播放页还是有一定的实用性的。不能保证100%有效

使用前需把:

// @note        *://*/*

改成:

// @match        *://*/*

更新历史

  • v 2.2.0

    1. 移除 0 快捷键。
    2. fix: B站直播可见性监听失效问题。
  • v 2.1.0

    1. bug: 移除在@match中的地址鼠标悬停监听,该监听会影响腾讯视频的倍速播放。
    2. fix: 抖音网页版为直播间时也会应用倍速问题。
    3. 新增对 视频网页全屏(改) 的实验性扩展。
  • v 2.0.0

    1. 新增倍速播放功能。
    2. 新增页面可见性监听,当视频播放标签页不可见时会暂停播放,可见时继续播放。
  • v 0.9.9

    1. 解决B站直播不支持全屏切换关闭弹幕快捷键。
  • v 0.9.7

    1. 新增全屏(F)网页全屏(P)下一个视频(N)弹幕开关(D)快捷键。