首页 > 解决方案 > 在 Chrome 扩展上下文菜单中修改 DOM 的权限

问题描述

我有 chrome 扩展开发的中级知识。

语境:

Cannot access contents of the page. Extension manifest must request permission to access the respective host.

但是,如果我首先使用键盘命令注入内容,然后在上下文菜单操作中修改该内容,则它可以正常工作。

所以,

为什么上下文菜单操作无法在 PDF 页面中添加 DOM 节点(当常规页面有效时)

为什么使用键盘命令添加 DOM 节点,然后使用上下文菜单操作对其进行修改?

编辑:使用上下文菜单操作时不起作用的代码:

注入内容.js

let wrapper = document.getElementById(SUTRA_ELEMENT)

if (!wrapper) {
  wrapper = document.createElement('div')
  wrapper.id = SUTRA_ELEMENT
  document.body.prepend(wrapper)
}

// modify wrapper

当通过 Chrome PDF 查看器上的上下文菜单操作运行时,会导致上述错误。但是,通过键盘命令运行时它可以正常工作。通过键盘命令运行它后,通过上下文菜单操作运行允许修改已经前置的元素。

标签: javascriptgoogle-chromegoogle-chrome-extensiongoogle-chrome-devtools

解决方案


推荐阅读