在main.js
我打开一个标签并附加一个带有page-mod
的脚本。正在打开它的html文件有一堆常规包含。
有两个问题。
答案 0 :(得分:0)
你必须发送消息。
<强>直接强>
在你的page-mod中,发送一条消息:
页-mod.js
window.postMessage(projectUniqueId + '|' + message, domain);
如果您的网页需要与所有域(作为插件)一起使用,您可能需要&#39; *&#39;作为域名。
制表attach.js
window.addEventListener('message',function(event){
var words = event.data.split('|');
if (words[0] == projectUniqueId){
handle(words[1]);
}
});
答案 1 :(得分:0)
在加载其他脚本后,页面mod中的脚本才会被附加,
在加载DOM内容后,在页面模型构造函数中指定contentScriptWhen: 'ready'
应该&#34; [l] oad内容脚本,对应于DOMContentLoaded事件&#34;
常规脚本无法访问使用页面模式附加的脚本中定义的变量。
看看Expose objects to page scripts。你需要使用
var contentScriptObject = {"greeting" : "hello from add-on"}; unsafeWindow.clonedContentScriptObject = cloneInto(contentScriptObject, unsafeWindow);
在内容脚本中使对象可访问。