上一主题 下一主题
返回列表 发新帖

如何在Chrome中模仿Greasemonkey/Firefox的unsafewindow功能

[复制链接]

62

主题

353

帖子

619

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
619
发表于 2021-2-5 01:28:29 | 显示全部楼层 | 阅读模式

早期方法

var p = unsafeWindow;

if(window.navigator.vendor.match(/Google/)) {
    var div = document.createElement("div");
    div.setAttribute("onclick", "return window;");
    p = div.onclick();
};

创建div元素后设置属性,点击返回window引用,然后设置div的点击

随着chrome的更新该方法已经失效

目前chrome已经提供了unsafewindow,但是使用相对来说较为有限

优点

非tampermonkey脚本访问目标对象的唯一方法

多浏览器兼容

更容易调试脚本

缺点

注入的脚本部分不再具有gm函数特权

可能与原页面js冲突

该页面可能查看、使用、更改、甚至阻止脚本

需要启用js

使用外部调用库可能导致冲突或者时间问题,而且没有require更简单

require从本地的js副本中加载,加快了运行的速度,并且消除了对外部服务器的依赖问题

回复

使用道具 举报

53

主题

189

帖子

310

积分

中级会员

Rank: 3Rank: 3

积分
310
发表于 2021-2-5 14:21:59 | 显示全部楼层
本帖最后由 网络小白 于 2021-2-5 15:59 编辑

哥哥牛逼
提及少年一词,应与平庸相斥!
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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