获取动态插入的脚本作为文本

get dynamically inserted script as text

我使用的扩展程序允许您编写 javascript 然后将其注册到站点,然后动态地将此脚本注入站点并有效地允许您修改 DOM加载站点时在本地。

这很好,但是,我想实现脚本更新。如果我可以给脚本标签一个 Id 甚至 class,这会很好,但我不能。所以我需要做的是以某种方式获取当前脚本标签内容作为文本(没有 JQuery 选择器)。我知道我将如何完成剩下的工作。

我查看了 document.currentScript,但它返回 null。我有一个快速 google 并且当它没有执行脚本时会发生这种情况,但如果它告诉我它是空的,那一定是这样!我在这里做错了什么?

TamperMonkey 实际上有一个内置的更新操作,默认情况下每天检查更新并更新脚本。要使用它,您只需将其添加到用户脚本 headers:

// @updateURL    This is the same URL as below, as far as I can tell
// @downloadURL  URL to download the update from
// @version      This is a number, but it needs to be updated with each release for it to be updated

我原来的解决方案无论如何都行不通,因为它需要对 gitlab 进行 Ajax 调用,它没有 CORS header...