您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
操作视频进度条,将其移动到最后,用于绕过基于视频进度的限制。
当前为
// ==UserScript== // @name 视频进度条拉到尾端 // @namespace none // @version 1.1 // @description 操作视频进度条,将其移动到最后,用于绕过基于视频进度的限制。 // @author AMin // @match *://*/* // @grant none // @license Proprietary // @run-at document-end // ==/UserScript== (function () { 'use strict'; function manipulateProgressBar() { const videoElement = document.querySelector("video"); if (videoElement) { const currentPos = videoElement.currentTime; videoElement.currentTime = videoElement.duration - 2; setTimeout(() => { videoElement.currentTime = currentPos; }, 900); } } function createButton() { const triggerButton = document.createElement('button'); triggerButton.textContent = '视频置为最后'; Object.assign(triggerButton.style, { position: 'absolute', top: '10px', left: '10px', backgroundColor: '#444', color: '#fff', border: 'none', padding: '8px 16px', cursor: 'pointer', opacity: '0.85', zIndex: '10000' }); triggerButton.addEventListener('click', manipulateProgressBar); document.body.appendChild(triggerButton); } function checkForVideoAndCreateButton() { if (document.querySelector("video")) { createButton(); } else { // Check periodically if the video element appears later const observer = new MutationObserver((mutations) => { for (let mutation of mutations) { if (mutation.addedNodes.length) { for (let node of mutation.addedNodes) { if (node.tagName === 'VIDEO' || node.querySelector('video')) { createButton(); observer.disconnect(); return; } } } } }); observer.observe(document.body, { childList: true, subtree: true }); } } checkForVideoAndCreateButton(); })();