【发布时间】:2019-10-11 13:55:12
【问题描述】:
我想做的是我必须从谷歌图片中获取域结果。我正在使用 GM_xmlhttpRequest 获取信息,然后遍历它们并使用 .push() 放入数组中。 我遇到的问题是我必须计算结果的数量,如果它低于设定的数量,我必须进行另一次搜索等等。因此,每次使用 .push 将项目添加到数组时,它都会触发我的 if 语句。
GM_xmlhttpRequest({
method: "GET",
url: link,
onload: function(r) {
var gurl=[];
for (i=0; i<10; i++){
gurl.push($(r.responseText).find('div.nJGrxf.FnqxG').eq(i).text());
let editedList = [...new Set(gurl)];
}
if (editedList.length < 10){
window.open(nextSearch)
}
}
});`
我已经尝试了几个小时来找到更好的方法,任何帮助都会非常有用。
【问题讨论】:
-
这个方法有什么问题?
-
是的,你可以,但它可能不是你想要的。你能解释更多吗?
-
每次将 url 添加到数组时都会改变长度,所以上面的代码基本上会打开 10 个新窗口。我尝试将 if 语句包装在 setTimeOut 函数中,希望只获得最终长度,但效果相同。
标签: javascript jquery arrays