我在一个页面上有 5 个链接,我必须检查所有链接是否正常工作。这是代码
// iterate through each link and check if ti works.
for(var i=0; i < 5; i++) {
var ifLinkWorks = verifyLinkWorks(links[i]);
if(ifLinkWorks){ OK }
else{ error }
}
这是 verifyLinkWorks 函数。它打开一个链接。打开后,它会检查页面是否正确加载
function verifyLinkWorks(link) {
return winjs.Promise(function(complete) {
link.click();
// wait for page to load
return winjs.promise.timeout(4000).then(function () {
// check if page is loaded
var islinkOK = IsPageLoaded();
complete(islinkOK); // i want verifyLinkWorks to return this value
});
});
}
到达 link.click() 后,它不会等待页面加载。相反,它跳转到外部 for 循环中的 if 条件(这使得 linkWorks = undefined 因此,给出错误)。如何让它在verfifyLinkWorks 函数中等待。提前致谢...