上一主题 下一主题
ScriptCat,新一代的脚本管理器脚本站,与全世界分享你的用户脚本油猴脚本开发指南教程目录
返回列表 发新帖

等待 动态网页内容加载 办法

[复制链接]
  • TA的每日心情
    奋斗
    2024-5-29 00:06
  • 签到天数: 187 天

    [LV.7]常住居民III

    23

    主题

    33

    回帖

    223

    积分

    荣誉开发者

    积分
    223

    新人报道油中2周年荣誉开发者

    发表于 2024-4-17 14:14:45 | 显示全部楼层 | 阅读模式

    查找网页 是否 存在 特定字符串,结果就是找不到
    查看网页 源代码 ,也没有显示

    查找资料 了解到,网页内容是通过 JavaScript 动态生成的,此时可能需要等待页面加载完成后再获取内容

    程序例子等待 .floor-show 元素,再开始 查找网页内容字符串

    初学者代码可以不完全看懂,会模板套用,慢慢加强了解

    
    // ==UserScript==
    // @name         Wait for .floor-show
    // @namespace    http://tampermonkey.net/
    // @version      1.0
    // @description  Wait for an element with class "floor-show" to load before running the script
    // @author       Your Name
    // @match        https://*/*
    // @grant        none
    // @run-at       document-end
    // ==/UserScript==
    
    (function() {
        'use strict';
    
        // 函数,当目标元素加载后将被调用
        function onElementLoaded(element) {
            console.log('元素加载完成:', element);
            // 在这里写你的逻辑
        }
    
        // 创建一个观察器实例并传入一个回调函数
        const observer = new MutationObserver(function(mutations, me) {
            // 查找页面上带有 'floor-show' 类的元素
            const element = document.querySelector('.floor-show');
            if (element) {
                onElementLoaded(element); // 调用函数
                me.disconnect(); // 停止观察
                return;
            }
        });
    
        // 开始观察文档对象模型(DOM)的变化,配置对象指定了我们想要观察的变化类型
        observer.observe(document.documentElement, {
            childList: true,
            subtree: true
        });
    })();
    
  • TA的每日心情
    开心
    2024-3-13 10:14
  • 签到天数: 211 天

    [LV.7]常住居民III

    305

    主题

    4161

    回帖

    4034

    积分

    管理员

    积分
    4034

    管理员荣誉开发者油中2周年生态建设者喜迎中秋油中3周年挑战者 lv2

    发表于 2024-4-17 16:02:14 | 显示全部楼层
    不要和我说什么MutationObserver,我写代码就是setTimeout一把梭
    上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。
    回复

    使用道具 举报

  • TA的每日心情

    2024-5-10 14:44
  • 签到天数: 23 天

    [LV.4]偶尔看看III

    4

    主题

    70

    回帖

    64

    积分

    初级工程师

    积分
    64

    油中3周年挑战者 lv1

    发表于 2024-4-17 16:35:37 | 显示全部楼层
    只想知道它去了没有,setInterval更有性价比
    回复

    使用道具 举报

    发表回复

    本版积分规则

    快速回复 返回顶部 返回列表