Jquery每个循环,然后等待点击

时间:2012-11-06 17:35:41

标签: jquery

我真的很想知道如何让它工作(或者即使有可能),但我需要做的是在每个循环中:

每个循环的开始 更改iframe的来源 等待帧加载 运行一个get,修改一些页面内容 然后等待用户单击2个按钮之一 循环中的下一项

jquery有可能吗?到目前为止,我有:

$.each(arr, function (index, value) {

var url = this.url;
$('#frameid').attr('src',url);
//need to wait for iframe to finish loading here
$.get("ajax.php", {action:'findfields',url:url}, function(result){
    //do some stuff which I already have working
});
//wait for button click and then next in loop

});

1 个答案:

答案 0 :(得分:1)

一个暂定的解决方案是简单地将其余代码绑定到一个加载处理程序,并使用函数递归进行迭代。

var arr = [...];
var index = 0;

function iterate() {
    var url = this.url;
    $('#frameid').attr('src',url);
    $('#frameid').unbind("load");
    $('#somebutton').unbind("click");

    //need to wait for iframe to finish loading here
    $('#frameid').on("load",function(){
        $.get("ajax.php", {action:'findfields',url:url}, function(result){
            //do some stuff which I already have working
            $("#somebutton").click(iterate);
        });
    });
    index++;
});