拒绝延迟加载

Attempts to disable lazy loading scripts. May break websites.

目前为 2024-12-27 提交的版本。查看 最新版本

// ==UserScript==
// @name         拒绝延迟加载
// @version      1.0
// @description  Attempts to disable lazy loading scripts.  May break websites.
// @match        *://*/*
// @author       Lama AI 辅助
// @grant        GM_setValue
// @grant        GM_getValue
// @run-at       document-start
// @namespace    https://greasyfork.org/users/1171320
// @license MIT

// ==/UserScript==

(function() {
    'use strict';

    //This is a VERY incomplete list, and many lazy loading implementations will not be caught by this.
    const lazyLoadScriptPatterns = [
        'lazysizes',
        'lazyload',
        'lozad',
        'intersectionobserver' // This is a common API, but some websites might use it without lazy-loading
    ];


    function disableLazyLoading() {
        lazyLoadScriptPatterns.forEach(pattern => {
            let scripts = document.querySelectorAll(`script[src*="${pattern}"], script[src*="${pattern}.min}"]`);
            scripts.forEach(script => {
                script.remove();
                console.log(`Removed script: ${script.src}`);
            });
        });

        //Attempt to remove inline lazy loading functions (very unreliable)
        let scripts = document.querySelectorAll('script');
        scripts.forEach(script => {
            const scriptContent = script.textContent;
            if(scriptContent.includes('lazyload') || scriptContent.includes('IntersectionObserver')){
                console.log('Potentially lazyload script detected.  Removing (this may break the site!): ', scriptContent);
                script.remove();
            }
        });
    }

    disableLazyLoading();


})();