jQuery Javascript在继续执行代码之前等待iframe加载

时间:2012-12-04 18:30:32

标签: javascript jquery iframe browser-automation

我正在使用javascript / jQuery和iFrames开展 webbrowser自动化项目。问题是代码必须等待iframe加载才能继续执行。

        // set value on iframe input on page 1
        $('#csi').contents().find('#inputonpage1').val('hello world');
        // click the send button
        $('#csi').contents().find('#sendbuttononpage1').trigger('click');

        // here must wait until the iframe loads it's 'new' page
        ?

        // set value on another field on page 2
        $('#csi').contents().find('#inputonpage2').val('hello world again');
        // click a button...
        $('#csi').contents().find('#sendbuttononpage2').trigger('click');
        // wait to load... and continue on page 3... 4... 5... etc...
        . 

依旧......

我已经阅读了关于$()。load函数回调的所有这些内容,但我需要一些东西来防止在iframe准备就绪之前执行下一行代码。不仅仅是因为我在所有其他帖子中看到过。

我正在尝试使用全局来标记iframe状态......例如:

var isready = false;

$(document).ready(function(){        

    $("#csi").load(function(){
        isready=true;
    });

    $("#buttonstart").click(function(){
        // fill fields and click button...
        // start wait function
        // fill fields and click button...
    });
});

function wait(){
    while(!isready){
        // thread hangs here....
    }
    isready=false;   // disarms
}

THX,

0 个答案:

没有答案