我可以使用内容脚本从另一个脚本获取变量的值吗?例如,来自Facebook上的脚本。抱歉我的英文。
答案 0 :(得分:2)
您的内容脚本可以在页面中注入<script>
元素。注入的脚本应该读取值并使用DOM事件将值传递给内容脚本。
在内容脚本:
中// inject a script from the extension's files
// into the execution environment of the main page
var s = document.createElement('script');
s.src = chrome.extension.getURL("value _reader.js");
document.documentElement.appendChild(s);
document.addEventListener("valueFromPageEvent", function(event) {
console.log("the content script just got the value " + event.detail.val);
});
在 value_reader.js
(我们在上面的内容脚本中注入)中,假设我们要从页面中读取变量 foobar
:
var dataObj = { "val": foobar };
var storeEvent = new CustomEvent('valueFromPageEvent', { "detail": dataObj });
document.dispatchEvent(storeEvent);
N.B。: value_reader.js
脚本必须位于清单中web_accessible_resources
的扩展程序列表中。