我有一个网址数组,我想为我拥有的每个网址创建一个iframe。
但是我想要的是仅在完全加载前一个iframe时创建并加载下一个iframe。

这是创建iframe的函数:

function loadSubsequencePages(links){
var id = document.getElementsByTagName("iframe").length;

    for(var i=0; i<links.length;i++){
        var frame = document.createElement("iframe");
        frame.setAttribute("id","frame"+id);
        frame.setAttribute("src","about:blank");
        document.getElementById('frames').appendChild(frame);
        changeLoc(document.getElementById("frame"+id),links[i].href);
    }

}


仅当加载我创建的实际iframe时,我才想移至下一个i。

这是更改URL的功能:

function changeLoc(frm,loc) {
        frm.webNavigation.loadURI(loc,
                                frm.webNavigation.LOAD_FLAGS_NONE,
                                null, null, null
                              );
    }


我怎样才能做到这一点?

最佳答案

那要看。


您可以控制IFRAME中显示的页面吗?
他们是
在与托管页面相同的域上?


有四种方案:


如果它们在同一域中,则可以通过以下方式访问内容
JavaScript。
如果它们在同一域中,则可以修改已加载的
页,您可以在onload事件时告诉父框架
IFRAME中加载的页面触发。
如果它们不在同一域中,则可以修改已加载的
页面上,安全限制将阻止直接通信。但是你
可以从加载的页面ping服务器上的中央存储库
onload事件触发
如果它们不在同一域中,并且您不能修改
加载的页面...好吧,您遇到了麻烦... :)您将无法
检查页面何时完成加载..嗯..您可以创建一些难看的东西
计时器按设定的时间间隔加载页面...但是不要告诉任何人我
告诉过你了... ;)

关于javascript - 如何在另一个已加载的iframe之后加载一个iframe,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8015592/

10-16 16:41
查看更多