您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Toggle hardware acceleration and enhance web performance without logging users out
当前为
- // ==UserScript==
- // @name Hardware Acceleration and Web Performance Enhancer
- // @namespace http://tampermonkey.net/
- // @version 1.3
- // @description Toggle hardware acceleration and enhance web performance without logging users out
- // @author Tae
- // @match *://*/*
- // @grant none
- // @license MIT
- // ==/UserScript==
- (function() {
- 'use strict';
- // Load Quicklink library to enhance link prefetching
- const script = document.createElement('script');
- script.src = 'https://unpkg.com/quicklink@2.0.0/dist/quicklink.umd.js';
- script.onload = () => {
- if (typeof quicklink !== 'undefined') {
- try {
- quicklink.listen({
- origins: true,
- ignores: [
- (uri) => uri.includes('logout'),
- (uri) => uri.includes('login'),
- (uri) => uri.includes('account')
- ]
- });
- } catch (error) {
- console.error('Error initializing Quicklink:', error);
- }
- } else {
- console.error('Quicklink library is not available.');
- }
- };
- script.onerror = () => {
- console.error('Error loading Quicklink library.');
- };
- document.head.appendChild(script);
- // Global error listener
- window.addEventListener('error', (event) => {
- console.error('Script error:', event.message, 'at', event.filename, 'line', event.lineno);
- });
- // Prevent navigation to logout, login, or account pages on link clicks
- document.addEventListener('click', (event) => {
- const target = event.target;
- if (target.tagName === 'A' && (target.href.includes('logout') || target.href.includes('login') || target.href.includes('account'))) {
- event.preventDefault();
- console.warn('Prevented navigation to:', target.href);
- }
- });
- // Prevent 503 errors by sending keep-alive requests
- const sendKeepAlive = () => {
- const url = '/keep-alive';
- if (navigator.sendBeacon) {
- try {
- navigator.sendBeacon(url, '');
- } catch (error) {
- console.error('Error sending beacon:', error);
- }
- } else {
- const xhr = new XMLHttpRequest();
- xhr.open('POST', url, true);
- xhr.onerror = () => {
- console.error('Error with keep-alive request:', xhr.statusText);
- };
- xhr.send('');
- }
- };
- setInterval(sendKeepAlive, 300000); // Send keep-alive request every 5 minutes
- })();