微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 background.js 中访问文档/DOM?

如何解决如何在 background.js 中访问文档/DOM?

我正在尝试访问后台脚本中的 DOM 以创建画布元素。如何在 manifest v3 中访问 background.js 中的 DOM?我知道它可以在 v2 中访问。

我正在创建此元素作为 chrome.tabs.captureVisibleTab() 的一部分,这是一种特定于 background.js 的 API 方法

chrome.tabs.get(tabId,function(tab) {
        chrome.tabs.captureVisibleTab(tab.windowId,{ format: "png" },function(dataUrl) {
            (console.log("chrome.tabs.captureVisibleTab() called"))
            if (!canvas) {
                canvas = document.createElement("canvas");
                document.body.appendChild(canvas);
            ...

我目前收到一个错误Error handling response: ReferenceError: document is not defined at chrome-extension://.../background.js

我尝试将文档从内容脚本传递给后台脚本,如下所示:

chrome.runtime.sendMessage({document: document},function(response) {})

但传递的文档不是对象,也没有像 createElement 那样的普通 DOM 方法

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。