Google Chrome扩展程序操纵打开或当前标签的DOM
好的,JavaScript / jQuery我得到了,我可以用它来做我想要的一般。 然而,我目前正在尝试做的是使用开放/当前选项卡的DOM,我想知道这是否可能,或者我所做的所有工作我的扩展仅限于html我提供了“背景”。 HTML“或等效的。
对于今天尝试在谷歌扩展程序上进行罢工,我想在页面上拍摄图像并将它们存储在一个数组中,以创建一个幻灯片效果,从它通过一个栏我想要添加到页面的底部附加到它打开/当前选项卡的现有DOM。 然后我想在DOM中“隐藏”元素直到条形图关闭。
所以我的第一个问题是,这样的事情是可能的,我可以用这种方式操纵DOM并从中读取。
内容脚本是在页面和Chrome扩展程序之间的环境中运行的脚本。 这些脚本在每个页面加载时加载,并具有对页面 DOM的完全访问权限 。 DOM方法(例如document.getElementById()
就像它们是页面的一部分一样。
全局window
对象(包括frames
和HTMLIFrameElement.contentWindow
)是内容脚本无法直接读取的唯一对象。
内容脚本在清单文件中定义的每个页面上运行。 在"content_scripts"
部分指定匹配模式 ,以定义内容脚本必须在哪些页面上运行。 还要将此模式添加到"permissions"
部分,以解锁修改页面DOM的function。
注意 :这些脚本只能使用一些chrome.*
API (例如chrome.extension.sendRequest
与后台页面进行通信)。
在后台页面中 ,不能直接访问页面的DOM。 您可以使用chrome.extension.executeScript
在任意选项卡中注入脚本,但是您将无法直接引用元素。 为此,需要内容脚本。