gpt4 book ai didi

javascript - 使用javascript单击页面上的所有按钮

转载 作者:行者123 更新时间:2023-11-28 06:26:08 24 4
gpt4 key购买 nike

所以我尝试单击特定网页上的所有按钮。但棘手的是,这些按钮只有当鼠标悬停在按钮上时才会显示。单击完页面上的所有按钮后,我需要单击下一页按钮。再次单击新网页上的所有按钮,依此类推。

我实际上有一个工作脚本。但我在 javascript 中使用 setInterval 函数,我觉得这是一种很奇怪的方法。这是我的工作脚本:

alert ("Please refresh the page to stop");

setInterval(function () {

var inputs=document.getElementsByClassName('tw-action-button btn btn-sm ng-isolate-scope btn-primary');
var names=document.getElementsByClassName('screen-name');

for(var i=0; i<inputs.length; i++){
inputs[i].click();
}

}, 250);

//Change the page in every 15 seconds
setInterval(function () {

var nextButton=document.getElementsByClassName('btn btn-default btn-forward');

for(var i=0; i<nextButton.length; i++){
nextButton[i].click();
}

window.scrollTo(0,0);

}, 10000);

但是,当我将上面的代码更改为下面的代码时,脚本不会单击按钮。我必须使用 setInterval 函数吗?这是修改后但不起作用的代码:

function clickButtons(){

var followButtons = $('.buttonClass');
var numberOfButtons = followButtons.length;

for(var i=0; i<numberOfButtons; i++){
followButtons[i].click();
}
setTimeout(nextPage, 500);
}

function nextPage(){

var nextPageBtn = $('.nextPageButtonClass');
nextPageBtn.click();

setTimeout(clickButtons,500);
}

这是网页的 HTML: HTML for the webpage

最佳答案

我可能会考虑使用小书签,或者如果项目允许,则使用浏览器扩展。

由于您的代码需要对多个页面应用相同的操作,因此您需要以某种方式访问​​每个页面的 HTML,同时保留对 JS 代码的访问权限。

对于小书签,每次单击它时,您都可以在单击前进到下一页的按钮之前处理页面上的所有按钮。此时,您只需再次单击小书签即可。

对于扩展程序,我将使用一个 bool 值来指示每次访问所属域的页面时是否要执行指定的操作。然后,一旦启用,我只需访问第一页并让它单击所有按钮,单击前进的按钮并允许重复调用脚本。

我认为小书签是这两个选项中最合适的选择 - 快速、简单、需要注意的边缘情况很少。

我有一个书签,允许您使页面上的任何表格可排序。只需导航到该页面,单击小书签,然后瞧!单击标题行中的列可根据该行对表格进行排序。这是 sorttable js 库 ( http://www.kryogenix.org/code/browser/sorttable/#ajaxtables ) 提供的示例代码

这是小书签的“URL”: javascript:(function(){var s=document.createElement('script');s.src='http://kryogenix.org/code/browser/sorttable/sorttable.js';s.onload=function(){sorttable.init();Array.prototype.slice.call(document.getElementsByTagName('table')).forEach(function(t){sorttable.makeSortable(t);})};document.getElementsByTagName('head')[0].appendChild(s);})()

enter image description here

在我看来,插入一些代码来执行其中一个按钮的点击似乎是微不足道的。

关于javascript - 使用javascript单击页面上的所有按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35122032/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com