javascript to return all links in download page(返回下载页面中的所有链接的JavaScript)
问题描述
我在EDGE上下载了一些书,但遗憾的是浏览器不再显示紫色的访问链接,我不想下载重复的文件(EDGE只是重命名重复的文件,其他下载管理器只是下载它,然后询问你该怎么做)。因此,我求助于一个只能捕获EDGE下载页面中的所有链接并将它们导出到外部文件的Java代码,在外部文件中,我将编写另一个脚本来比较该文件中的链接和打开的链接
JS代码:
function findButton() {
var buttons = document.querySelectorAll('button');
for (var i = 0; i < buttons.length; i++) {
var elem = buttons[i];
var text = elem.textContent || elem.innerText;
if (text.includes("htt")){}
else {text = 0;}
return text
}
}
var x = findButton();
alert(x);
检查元素:
<button class="c0124348" id="open_link292" role="link" aria-label="https://onlinelibrary.wiley.com/doi/pdfdirect/10.1002/9780470132586">https://onlinelibrary.wiley.com/doi/pdfdirect/10.1002/9780470132586</button>
Sript仅返回First按钮的值,即(下载列表按钮)=0。
注意:
按钮的属性和类名中没有任何东西是静态的(类名和ID更改)
如果您对此问题有更简单的解决方案(检查下载文件是否已存在于目标中的下载管理器或任何其他解决方案),那么我想尝试一下。
推荐答案
我编辑了代码,现在它运行正常
function findButton() {
var buttons = document.querySelectorAll('button');
var arr = [];
for (var i = 0; i < buttons.length; i++) {
var elem = buttons[i++];
var text = elem.textContent || elem.innerText;
arr.push(text);
}
return arr
}
var x = findButton();
alert(x);
我忘了像Kevin B指出的那样形成一个数组,所以我声明了
arr一个空数组Return语句放在了错误的行中,它应该放在for循环中
这篇关于返回下载页面中的所有链接的JavaScript的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:返回下载页面中的所有链接的JavaScript
基础教程推荐
- 带角度的选项卡:仅使用 $http 在单击时加载选项卡 2022-01-01
- 在 Javascript 中使用 Fetch API 上传文件并显示进度 2022-01-01
- 即使每次插入第一个输入的值不同,第二个输入仍显示相同的输入值 2022-01-01
- 当木偶师打开Chrome时,不能使用Chrome扩展 2022-01-01
- 逻辑运算符 ||在 javascript 中,0 代表 Boolean false? 2022-01-01
- HTML5 画布调整为父级 2022-01-01
- 从快速中间件中排除路由 2022-01-01
- 最佳动态 JavaScript/JQuery 网格 2022-01-01
- CORS:当凭据标志为真时,无法在 Access-Control-Allow-Origin 中使用通配符 2022-01-01
- 使用 jQuery 在悬停时交换 DIV 类 2022-01-01
