从浏览器扩展访问弹出窗口

时间:2012-06-10 09:15:38

标签: userscripts

我需要打开一个弹出窗口并解析其内容。

我可以通过注入脚本执行此操作,如下所示: win = window.open(url); $(win.document).find(...);

但这被弹出窗口阻止程序阻止,用户必须允许该网站弹出窗口。

如果我从内容脚本本身执行相同操作,则会打开窗口而不会被阻止,但是win未定义。

是否可以获取弹出窗口的内容而不被弹出窗口阻止程序阻止?

请注意,我从与调用内容脚本的页面相同的域打开页面。

1 个答案:

答案 0 :(得分:0)

如果您不想向用户显示iframe,可以使用iframe或不可见的iframe。

将iframe附加到文档而不是打开新窗口,然后获取iframe的内容。

$(function() {
    $("#add").click(function() {
        $("#temp").append('<iframe id="tempiframe" 
                           src="http://fiddle.jshell.net/_display/"></iframe>');
        $("#tempiframe").load(function() {
            alert("hey I get this from iframe\n" 
                   +$(this).contents().find("pre").html());
        });
    });
});​

Here is a jsFiddle DEMO