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

时间网站setinterval无法劫持分析

[复制链接]
  • TA的每日心情
    慵懒
    2024-10-28 07:07
  • 签到天数: 193 天

    [LV.7]常住居民III

    712

    主题

    5961

    回帖

    6760

    积分

    管理员

    非物质文化遗产社会摇传承人

    积分
    6760

    荣誉开发者喜迎中秋油中2周年生态建设者

    发表于 2022-3-12 00:02:40 | 显示全部楼层 | 阅读模式

    前文

    很多人都好奇时间网站为什么setinterval失效无法劫持了

    http://time.tianqi.com/

    这里我们实战一下如何分析这个网站

    图片.png

    我们知道秒一直在改变

    找到对应节点

    右键,设置发生中断条件,子树修改

    图片.png

    会在这里断下,这里推荐用chrome浏览器,其他浏览器因为自身问题可能无法查看源代码,如ff

    观察堆栈发现

    图片.png

    这里现在变成了setTimeout来进行反复调用

    再观察代码

            NewTick();
    
            // s=nyear+'年'+nmonth+'月'+nday+'日 '+'星期'+cweekday(nwday)+' ';
            document.getElementsByClassName("hour_box")[0].innerHTML=shapetime(nhrs);
            document.getElementsByClassName("minute_box")[0].innerHTML=shapetime(nmin);
            document.getElementsByClassName("seconds_box")[0].innerHTML=shapetime(nsec);
            setTimeout("Draw()",500);
    

    每次赋值之后设置Settimeout在500ms后进行下一次Draw的自身回调

    结语

    破案~

    混的人。
    ------------------------------------------
    進撃!永遠の帝国の破壊虎---李恒道

    入驻了爱发电https://afdian.net/a/lihengdao666
    个人宣言:この世界で私に胜てる人とコードはまだ生まれていません。死ぬのが怖くなければ来てください。
  • TA的每日心情
    慵懒
    2023-11-28 11:18
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    17

    主题

    162

    回帖

    327

    积分

    荣誉开发者

    积分
    327

    荣誉开发者油中2周年生态建设者油中3周年挑战者 lv2

    发表于 2023-8-14 10:19:56 | 显示全部楼层
    还可能直接是requestAnimationFrame帧动画
    回复

    使用道具 举报

    发表回复

    本版积分规则

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