使用Javascript循环Iframe

使用Javascript循环Iframe,javascript,google-chrome-extension,Javascript,Google Chrome Extension,我创建了一个自动化程序,为此我需要遍历每个框架文档并设置一些输入 我用下面的函数迭代它,这个函数工作得很好,但在下面的URL中,它给了我拒绝访问的错误 我用来迭代每个帧和Iframe的代码 var i = new Array; var t = ''; var IFrameDoc; function GetAllFrame(a, n) { t = ''; try { for (i[n] = 0; i[n] < a.length; i[n]++) {try{ var o

我创建了一个自动化程序,为此我需要遍历每个框架文档并设置一些输入

我用下面的函数迭代它,这个函数工作得很好,但在下面的URL中,它给了我拒绝访问的错误

我用来迭代每个帧和Iframe的代码

var i = new Array;
var t = '';

var IFrameDoc;

function GetAllFrame(a, n) 
{
t = '';

try {

    for (i[n] = 0; i[n] < a.length; i[n]++) 

{try{
var oIframe = a[i[n]];

            IFrameDoc = oIframe.document;

            alert(IFrameDoc.body.outerHTML);
        }
        catch (e) {
            alert("Internal Error" + e.message + " - " + a[i[n]].frames.length);
        }

        if (a[i[n]].frames.length) t += GetAllFrame(a[i[n]].frames, n + 1);

    }
}
catch (e) {
    alert("External Error" + e.message);
}
return t;}
var i=新数组;
var t='';
var IFrameDoc;
函数GetAllFrame(a,n)
{
t='';
试一试{
对于(i[n]=0;i[n]
如果其他iFrame不是您的,则无法解决该问题,您无法覆盖跨源策略。 如果您拥有这两个窗口,那么您可以使用HTML5的PostMessageAPI在iFrame和父窗口之间“对话”,但我认为这不是您想要的。
如果您这样做,请留下评论,我将编辑我的答案。

您在远程位置或您的计算机上获得的访问被拒绝的iFrame?是的,是的。我知道这是一个跨域的问题,但我不知道如何解决它?有人能帮我吗?伙计,有什么方法可以让我获取或设置Iframe的详细信息吗?这完全取决于Iframe是否与父窗口位于同一个域下。如果不是的话,大多数时候是不可能的,因此也不可能,然后你将不得不使用HTML5 postMessage或其他一些形式,你可以看看这篇看起来很有用的博客文章,