Conversation
52766bd to
25fcffc
Compare
|
这个就是VM的 用途主要是,更快更直接操作页面 有一些小脚本就是要这样粗暴的网页修改,不用GM的功能 PR会按照VM的做法, 当 因为TM脚本不会有这个 https://violentmonkey.github.io/api/metadata-block/ |
|
现在的注入模式是 MV3的最大问题,没有好的网址配对脚本注入。没办法吧 |
|
这种注入模式,应该也有方法使用到GM API(可能就只能使用异步的了) |
|
@cyfung1031 也许并不是 |
有一段時間的 在MV3好像看不到這個可能性 (因為網址配對問題) |
|
@cyfung1031 关于这个需求,可以看这里: [活动结束][有奖答题]网页点击大挑战!2.0 http://test-case.ggnb.top/is_trusted/is_trusted.html
// ==UserScript==
// @name New Userscript
// @namespace https://bbs.tampermonkey.net.cn/
// @version 0.1.0
// @description try to take over the world!
// @author You
// @match http://test-case.ggnb.top/is_trusted/is_trusted.html
// @run-at document_start
// ==/UserScript==
console.log("script running");脚本始终慢页面js一步 |
要不要你在后台先把所有脚本的配对规则都拿出来 这样的话就省下了一堆content js inject js的沟通 再快一点的话,在navigation request的时候,分析完就用userscript API马上register. (知道那些脚本要注入,注入的网址) |
|
@cyfung1031 这样还是做不到最快,因为始终需要处理一下value/resource之类的资源(pageLoad方法那里),想要达到这个效果,还是得依靠 |
不做pageLoad |
|
@cyfung1031 这个流程听起来似乎也可以,后续再验证一下 |
离题一下: 现在是前发式注入,在所有网址都做注入,因此一定能跟注入的脚本对话 当然,后发式的话,脚本不改,网址一致的话,下一次再载入一定能触发 |
dc35ec8 to
26c0569
Compare

由于
// @run-at document-start的脚本对于执行时机非常敏感,原本无论// @grant是否为none均要等待content.js进行初始化后才会执行现在优化为同时满足
// @run-at document-start且// @grant none的脚本在注入时立即执行,不再等待content.js备注:
// @run-at不为document-start的脚本对执行时机不敏感,无需优化// @grant不为none的脚本必须等待content.js初始化才可获取GMapi及content(sandbox)上下文,目前无合理优化方案