如何在SetTimeout循环条件下clearTimeout调用

时间:2017-03-22 06:59:16

标签: javascript webview settimeout cleartimeout

我有一项任务是在网页中加载多个网址。因为我有10个url链接的数组大小,但我必须导出oly 5 URl,我为每个页面加载一个接一个地设置Timeout并加载下一个。当它达到第5个网址时,我必须访问我的主页,但由于我的数组计数为10,所以继续加载10次 这里是我的示例代码供您参考:

for (var i = 0; i < urlResult.length; i++) {
    myVar = setTimeout(function(y) {
        if (urlResult[y] == lastUrl) {
            wait(5000)
            if (pageVist_num == Total_count) {
                console.log("cleat timeout")
                clearTimeout(myVar);
                document.getElementById("web").src = 'https://www.google.com/'
            } else {
                pageVist_num = pageVist_num + 1
                document.getElementById("web").loadURL(lastUrl);
            }
        } else {
            if (pageVist_num == Total_count) {
                clearTimeout(myVar);
                console.log("clear timeout")
                document.getElementById("web").src = 'https://www.google.com/'
            } else {
                pageVist_num = pageVist_num + 1
                document.getElementById("web").loadURL(urlResult[y]);
            }
        }
    }, i * 18000, i); // we're passing x
}

0 个答案:

没有答案