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

[活动结束][有奖答题]网页点击大挑战!2.0

[复制链接]
回帖奖励 184 油猫币 回复本帖可获得 8 油猫币奖励! 每人限 1 次
  • TA的每日心情
    慵懒
    9 小时前
  • 签到天数: 813 天

    [LV.10]以坛为家III

    31

    主题

    552

    回帖

    1556

    积分

    荣誉开发者

    积分
    1556

    荣誉开发者新人进步奖油中2周年生态建设者新人报道挑战者 lv2油中3周年喜迎中秋

    发表于 2022-10-22 11:03:57 | 显示全部楼层
    本帖最后由 steven026 于 2022-10-22 12:09 编辑

    模拟真实点击.zip (1.86 KB, 下载次数: 12)
    模拟真实点击v2.zip (2.72 KB, 下载次数: 16)
    QQ截图20221022110022.png
    写了个插件,靠chrome debugger protocol模拟真实点击
    v2更新:增加一个content页面用来通信获取DOM元素位置【毕生所学……
    已有1人评分好评 贡献 理由
    王一之 + 1 + 4 ggnb!预定辣条一箱!

    查看全部评分 总评分:好评 +1  贡献 +4 

    回复
    订阅

    使用道具 举报

  • TA的每日心情
    慵懒
    2022-3-8 11:41
  • 签到天数: 2 天

    [LV.1]初来乍到

    22

    主题

    881

    回帖

    1379

    积分

    荣誉开发者

    积分
    1379

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

    发表于 2022-10-22 12:28:27 | 显示全部楼层
    李恒道 发表于 2022-10-22 01:03
    可以利用创建一个空iframe标签然后写innerHtml使script失效,再修改代码重新启动来实现
    但是太邪道了....
    ...

    这样相当于重载了一个新的页面,点击后弹出的提示实际是iframe弹出的,原页面还是没变,不过如果用iframe完全替换掉原页面,那可能有点实用价值,就是体验上比较糟糕,页面加载会变慢很多。
    回复

    使用道具 举报

  • TA的每日心情
    开心
    前天 13:37
  • 签到天数: 213 天

    [LV.7]常住居民III

    305

    主题

    4196

    回帖

    4061

    积分

    管理员

    积分
    4061

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

    发表于 2022-10-22 12:44:39 | 显示全部楼层
    cxxjackie 发表于 2022-10-22 12:28
    这样相当于重载了一个新的页面,点击后弹出的提示实际是iframe弹出的,原页面还是没变,不过如果用iframe ...

    而且iframe在实际运行中还会有跨域问题,不过这个replace的思路和我的想法差不多(扩展content的dom和网页是共享的,但是window并不
    上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-2-28 10:00
  • 签到天数: 40 天

    [LV.5]常住居民I

    3

    主题

    20

    回帖

    56

    积分

    荣誉开发者

    积分
    56

    新人报道油中2周年

    发表于 2022-10-22 16:03:46 | 显示全部楼层

    回帖奖励 +8 油猫币

    GGMNB!!!!
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    9 小时前
  • 签到天数: 813 天

    [LV.10]以坛为家III

    31

    主题

    552

    回帖

    1556

    积分

    荣誉开发者

    积分
    1556

    荣誉开发者新人进步奖油中2周年生态建设者新人报道挑战者 lv2油中3周年喜迎中秋

    发表于 2022-10-22 16:36:24 | 显示全部楼层
    GM_addElement?.rar (942 Bytes, 下载次数: 11)


    image.png
    提示:类似GM_addElement的实现原理
    依靠插件的另一种劫持方式,密码晚点发吧,看看有没有人能研究出来=-=



    点评

    压缩包密码 油猴中文网  发表于 2022-10-29 01:16
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-7-30 00:00
  • 签到天数: 122 天

    [LV.7]常住居民III

    29

    主题

    601

    回帖

    542

    积分

    专家

    积分
    542

    油中2周年生态建设者油中3周年挑战者 lv2

    发表于 2022-10-22 20:04:02 | 显示全部楼层

    回帖奖励 +8 油猫币

    依稀,这高手过招,小白远远观望,并惊出了一身冷汗。我在想,楼下的能不能来个不世奇才盖过他们呢
    回复

    使用道具 举报

  • TA的每日心情
    开心
    前天 13:37
  • 签到天数: 213 天

    [LV.7]常住居民III

    305

    主题

    4196

    回帖

    4061

    积分

    管理员

    积分
    4061

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

    发表于 2022-10-22 20:10:42 | 显示全部楼层
    steven026 发表于 2022-10-22 16:36
    提示:类似GM_addElement的实现原理
    依靠插件的另一种劫持方式,密码晚点发吧,看看有没有人能研究出来 ...

    哥哥tql,两种方法了
    上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。
    回复

    使用道具 举报

  • TA的每日心情
    开心
    前天 13:37
  • 签到天数: 213 天

    [LV.7]常住居民III

    305

    主题

    4196

    回帖

    4061

    积分

    管理员

    积分
    4061

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

    发表于 2022-10-25 16:05:25 | 显示全部楼层
    就没人参与了么
    上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    9 小时前
  • 签到天数: 813 天

    [LV.10]以坛为家III

    31

    主题

    552

    回帖

    1556

    积分

    荣誉开发者

    积分
    1556

    荣誉开发者新人进步奖油中2周年生态建设者新人报道挑战者 lv2油中3周年喜迎中秋

    发表于 2022-10-26 11:34:34 | 显示全部楼层

    本帖最后由 steven026 于 2022-10-26 11:42 编辑

    image.png
    再说一种简单的手动方法,需要借助Devtools,没法在脚本中使用
    (getEventListeners是Devtools里内置的函数,没法在其余环境中用,包括扩展。不清楚扩展是否有类似的函数)

    具体原理:用Devtools获取事件监听函数,然后直接触发这个函数。

    因为不需要点击元素也不用dispatchEvent,所以可以直接传个Object过去
    如果还检测了原型链,把原型提前劫持了就行(为了方便就不用Proxy了)

    代码:

    MouseEvent = Object
    let fakeObj = { target: { id: 'btn' }, isTrusted: true }
    getEventListeners(document).click[0].listener(fakeObj)
    回复

    使用道具 举报

  • TA的每日心情
    开心
    前天 13:37
  • 签到天数: 213 天

    [LV.7]常住居民III

    305

    主题

    4196

    回帖

    4061

    积分

    管理员

    积分
    4061

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

    发表于 2022-10-26 11:42:32 | 显示全部楼层
    steven026 发表于 2022-10-26 11:34
    [md]!(data/attachment/forum/202210/26/113954qxwzu3tfdrr4a3xa.png)
    再说一种简单的手动方法,需要借助De ...

    getEventListeners只能devtools里用了,不知道devtools还有啥API
    上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。
    回复

    使用道具 举报

    发表回复

    本版积分规则

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