我正在开发Chrome扩展程序.我希望解析"原始"Gmail邮件(当前查看的邮件)的内容.
我试图利用jQuery.load()如下
$(windows).load(function() { alert(GLOBALS); });
Run Code Online (Sandbox Code Playgroud)
并将其放在内容脚本中,但它也不起作用.我正在使用Chrome的开发人员工具,它会在调用时返回以下错误alert(GLOBALS);
未捕获的ReferenceError:未定义GLOBALS
虽然,在使用开发人员工具的控制台时,键入控制台GLOBALS会返回一个数组.
有关如何从内容脚本访问GLOBALS的任何线索?
我正在开发一个镀铬扩展,并遇到了一个大问题.
我正在使用内容脚本在网站上注入我的javascript代码.该网站有一个iframe.我可以更改iframe的源代码,但似乎无法访问iframe的contentWindow属性.我需要它在当前的carret位置插入文本.
所以基本上这个代码在页面的上下文中完美地工作:
$("#iframe1").contentWindow.document.execCommand("InsertHTML", false, 'test text');
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试在我的chrome扩展程序的上下文中运行时,我收到此错误:
TypeError: Cannot read property 'document' of undefined
Run Code Online (Sandbox Code Playgroud)
奇怪的是,我可以访问iframe的html.所以这段代码完全可以从chrome扩展程序中运行:
$("#iframe1").contents().find('div').html('test')
Run Code Online (Sandbox Code Playgroud)
我尝试在清单文件中放入"all_frames":true但没有运气:(
我正在开发一个 Chrome 扩展程序以与我自己的 Web 应用程序一起使用,处理加载到iFrame我的应用程序主页上的网页(包括跨域页面)。所以我必须发送消息,包含要处理的页面的 URL,从我的主页面到内容脚本,注入目标iFrame以访问已处理页面的窗口。
我尝试实施这里描述的方法。以下是所有涉及的文件的基本部分:
index.html:
...
<head>
...
<script type="text/javascript" src="base.js"></script>
</head>
<body>
<div>
<input type="text" id="page_url"> <input type="button" id="get_page" value="Get page">
</div>
<iframe id="cross_domain_page" src=""></iframe>
</body>
Run Code Online (Sandbox Code Playgroud)
base.js:
(function() {
"use strict";
function pageProcessing() {
let urlButton = window.document.getElementById("get_page");
urlButton.addEventListener("click", () => {
let url = window.document.getElementById("page_url").value;
window.postMessage(
{
sender: "get_page_button1",
message: url
},
"*"
);
window.postMessage(
{
sender: "get_page_button2",
message: url
},
"*"
);
});
}
window.document.addEventListener('readystatechange', () => …Run Code Online (Sandbox Code Playgroud) javascript iframe postmessage google-chrome-extension content-script
我正在开发我已创建iframe的Chrome扩展程序.我试图发送一条消息,postMessage并收到有关协议不匹配的消息,如下所示:
不安全的JavaScript尝试使用URL chrome-extension访问具有URL https://*的框架://gbafofmepfbgfgglhfaddmfnmdcddiig/js/content_script/file.html.请求访问的帧具有"chrome-extension"协议,被访问的帧具有"https"协议.协议必须匹配.