知识星球视频增强

<html> <head></head> <body> <div class="content ql-editor"> <p>知识星球原生视频组件,无法通过键盘操作前进、后退、暂停、播放,于是写了一个简单的脚本,要先安装好篡改猴Tampermonkey等插件管理器。然后新建脚本,并复制如下代码:</p> <p><a href="https://gist.github.com/ohownew/c512223973c0e30cfff920d33711d190" target="_blank">https://gist.github.com/ohownew/c512223973c0e30cfff920d33711d190</a></p> <div class="ql-code-block-container"> <div class="ql-code-block"><span class="ql-token hljs-comment">// ==UserScript==</span> </div> <div class="ql-code-block"><span class="ql-token hljs-comment">// @name 知识星球视频增强</span> </div> <div class="ql-code-block"><span class="ql-token hljs-comment">// @namespace http://tampermonkey.net/</span> </div> <div class="ql-code-block"><span class="ql-token hljs-comment">// @version 2024-04-21</span> </div> <div class="ql-code-block"><span class="ql-token hljs-comment">// @description 知识星球视频,通过键盘控制: 前进 后退 暂停 开始 全屏</span> </div> <div class="ql-code-block"><span class="ql-token hljs-comment">// @author ohownew</span> </div> <div class="ql-code-block"><span class="ql-token hljs-comment">// @match https://wx.zsxq.com/*</span> </div> <div class="ql-code-block"><span class="ql-token hljs-comment">// @icon https://www.google.com/s2/favicons?sz=64&amp;domain=zsxq.com</span> </div> <div class="ql-code-block"><span class="ql-token hljs-comment">// @grant none</span> </div> <div class="ql-code-block"><span class="ql-token hljs-comment">// ==/UserScript==</span> </div> <div class="ql-code-block"><br> </div> <div class="ql-code-block"> (<span class="ql-token hljs-keyword">function</span>() { </div> <div class="ql-code-block"> <span class="ql-token hljs-string">'use strict'</span>; </div> <div class="ql-code-block"> <span class="ql-token hljs-keyword">var</span> isFullScreen = <span class="ql-token hljs-literal">false</span>; </div> <div class="ql-code-block"> <span class="ql-token hljs-comment">// 添加键盘事件监听器</span> </div> <div class="ql-code-block"> <span class="ql-token hljs-variable">document</span>.<span class="ql-token hljs-title">addEventListener</span>(<span class="ql-token hljs-string">'keydown'</span>, <span class="ql-token hljs-keyword">function</span>(<span class="ql-token hljs-params">event</span>) { </div> <div class="ql-code-block"> <span class="ql-token hljs-keyword">const</span> key = event.<span class="ql-token hljs-property">key</span>; </div> <div class="ql-code-block"><br> </div> <div class="ql-code-block"> <span class="ql-token hljs-comment">// 获取视频元素</span> </div> <div class="ql-code-block"> <span class="ql-token hljs-keyword">const</span> video = <span class="ql-token hljs-variable">document</span>.<span class="ql-token hljs-title">querySelector</span>(<span class="ql-token hljs-string">'video'</span>); </div> <div class="ql-code-block"><br> </div> <div class="ql-code-block"> <span class="ql-token hljs-comment">// 按下左键,将视频当前时间减去5秒</span> </div> <div class="ql-code-block"> <span class="ql-token hljs-keyword">if</span> (key === <span class="ql-token hljs-string">'ArrowLeft'</span>) { </div> <div class="ql-code-block"> video.<span class="ql-token hljs-property">currentTime</span> -= <span class="ql-token hljs-number">5</span>; </div> <div class="ql-code-block"> } </div> <div class="ql-code-block"> <span class="ql-token hljs-comment">// 按下右键,将视频当前时间加上5秒</span> </div> <div class="ql-code-block"> <span class="ql-token hljs-keyword">else</span> <span class="ql-token hljs-keyword">if</span> (key === <span class="ql-token hljs-string">'ArrowRight'</span>) { </div> <div class="ql-code-block"> video.<span class="ql-token hljs-property">currentTime</span> += <span class="ql-token hljs-number">5</span>; </div> <div class="ql-code-block"> } </div> <div class="ql-code-block"> <span class="ql-token hljs-comment">// 按下空格键,播放或暂停视频</span> </div> <div class="ql-code-block"> <span class="ql-token hljs-keyword">else</span> <span class="ql-token hljs-keyword">if</span> (key === <span class="ql-token hljs-string">' '</span>) { </div> <div class="ql-code-block"> <span class="ql-token hljs-keyword">if</span> (video.<span class="ql-token hljs-property">paused</span>) { </div> <div class="ql-code-block"> video.<span class="ql-token hljs-title">play</span>(); </div> <div class="ql-code-block"> } <span class="ql-token hljs-keyword">else</span> { </div> <div class="ql-code-block"> video.<span class="ql-token hljs-title">pause</span>(); </div> <div class="ql-code-block"> } </div> <div class="ql-code-block"> } </div> <div class="ql-code-block"> <span class="ql-token hljs-comment">// 按下组合键 Shift + F,全屏或退出全屏</span> </div> <div class="ql-code-block"> <span class="ql-token hljs-keyword">else</span> <span class="ql-token hljs-keyword">if</span> (key === <span class="ql-token hljs-string">'F'</span>) { </div> <div class="ql-code-block"> <span class="ql-token hljs-keyword">if</span> (isFullScreen) { </div> <div class="ql-code-block"> video.<span class="ql-token hljs-title">webkitExitFullscreen</span>(); </div> <div class="ql-code-block"> isFullScreen = <span class="ql-token hljs-literal">false</span>; </div> <div class="ql-code-block"> } <span class="ql-token hljs-keyword">else</span> { </div> <div class="ql-code-block"> video.<span class="ql-token hljs-title">webkitEnterFullscreen</span>(); </div> <div class="ql-code-block"> isFullScreen = <span class="ql-token hljs-literal">true</span>; </div> <div class="ql-code-block"> } </div> <div class="ql-code-block"> } </div> <div class="ql-code-block"> }); </div> <div class="ql-code-block"> })(); </div> </div> <p>从此看鱼皮视频再也不用下载了,爽歪歪</p> <p>--------------------</p> <p>更新记录:</p> <p>2024-04-21 增加全屏功能:shift+F</p> </div> </body> </html>

下载 APP