如何遍历 link 数组中的每个 link
How to go through each link in an array of links
大家好,我正在编写一个篡改猴子脚本,用于从网页上抓取 links,将它们存储到一个数组中,然后以某种方式遍历数组中的每个 link在 link 中获取信息。
所以假设我有一个数组 "turls",其中 25 links 从主页抓取,我使用 window.location.href 进入 links 和window.history.back();返回主页。一旦我 return 到主页,脚本将再次 运行,并再次进入第一个 link。
我想我可以在回到主页面后继续下一个 link,所有 link 都带有 GM_setvalue 和 GM_getvalue,但是如何?我不确定如何处理所有 25 links。
提前致谢,
(urls 和 turls 的 console.log 结果在 chrome 控制台中显示为一个 300 的数组和一个 25 的数组,但是当我输入 console.log(urls) 或 console.log(turls) 到 chrome 控制台。)
// ==/UserScript==
(function() {
'use strict';
var urls= [];
var turls = [];
$( document ).ready(function() {
for (var i= document.links.length; i-->0;){
if (document.links[i].hostname===location.hostname){
if (document.links[i].href.indexOf("tournaments") > -1) {
turls.push(document.links[i].href);
}
urls.push(document.links[i].href);
}
}
});
console.log(urls);
console.log(turls);
})();
试试这个。
// @grant GM_setValue
// @grant GM_getValue
(function() {
'use strict';
var turls = GM_getValue('turls', []);
if(turls.length == 0) {
$(document).ready(function() {
for (var i = 0; i<document.links.length; i++) {
if (document.links[i].hostname === location.hostname) {
if (document.links[i].href.indexOf("tournaments") > -1) {
turls.push(document.links[i].href);
}
}
}
});
}
if(turls.length > 0) {
var turl = turls.shift();
GM_setValue('turls', turls);
window.location.href = turl;
}
})();
要在 window 加载时将值保存在 TamperMonkey 脚本中,即强制重新加载脚本,您需要使用 GM_setValue
和 GM_getValue
跨会话存储和检索值.
大家好,我正在编写一个篡改猴子脚本,用于从网页上抓取 links,将它们存储到一个数组中,然后以某种方式遍历数组中的每个 link在 link 中获取信息。
所以假设我有一个数组 "turls",其中 25 links 从主页抓取,我使用 window.location.href 进入 links 和window.history.back();返回主页。一旦我 return 到主页,脚本将再次 运行,并再次进入第一个 link。
我想我可以在回到主页面后继续下一个 link,所有 link 都带有 GM_setvalue 和 GM_getvalue,但是如何?我不确定如何处理所有 25 links。
提前致谢,
(urls 和 turls 的 console.log 结果在 chrome 控制台中显示为一个 300 的数组和一个 25 的数组,但是当我输入 console.log(urls) 或 console.log(turls) 到 chrome 控制台。)
// ==/UserScript==
(function() {
'use strict';
var urls= [];
var turls = [];
$( document ).ready(function() {
for (var i= document.links.length; i-->0;){
if (document.links[i].hostname===location.hostname){
if (document.links[i].href.indexOf("tournaments") > -1) {
turls.push(document.links[i].href);
}
urls.push(document.links[i].href);
}
}
});
console.log(urls);
console.log(turls);
})();
试试这个。
// @grant GM_setValue
// @grant GM_getValue
(function() {
'use strict';
var turls = GM_getValue('turls', []);
if(turls.length == 0) {
$(document).ready(function() {
for (var i = 0; i<document.links.length; i++) {
if (document.links[i].hostname === location.hostname) {
if (document.links[i].href.indexOf("tournaments") > -1) {
turls.push(document.links[i].href);
}
}
}
});
}
if(turls.length > 0) {
var turl = turls.shift();
GM_setValue('turls', turls);
window.location.href = turl;
}
})();
要在 window 加载时将值保存在 TamperMonkey 脚本中,即强制重新加载脚本,您需要使用 GM_setValue
和 GM_getValue
跨会话存储和检索值.