首页 > 解决方案 > querySelector 中的许多数字

问题描述

如何将数字添加到 querySelector(所以我不必手动编写它们)这是一个未命名游戏的脚本)

setTimeout(function() {     document.querySelector("#village_3 > td:nth-child(11) > a").click();    }, (Math.random() * 1000) + 1000);

这个例子

setTimeout(function() {     document.querySelector("#village(allnumbers) > td:nth-child(11) > a").click();    }, (Math.random() * 1000) + 1000);

村庄_4 村庄_5 村庄_6 村庄_7 (所有数字均为 ID 村庄)

我怎么做

document.querySelector ("# village_3> td: nth-child (11)> a")

在这种情况下,村庄编号不需要它们 3

所以我不必做很多代码来替换这些代码

document.querySelector ("# village_1> td: nth-child (11)> a")
document.querySelector ("# village_2> td: nth-child (11)> a")
document.querySelector ("# village_3> td: nth-child (11)> a")
document.querySelector ("# village_4> td: nth-child (11)> a")
document.querySelector ("# village_5> td: nth-child (11)> a")
document.querySelector ("# village_6> td: nth-child (11)> a")
document.querySelector ("# village_7> td: nth-child (11)> a")
document.querySelector ("# village_8> td: nth-child (11)> a")
document.querySelector ("# village_9> td: nth-child (11)> a")
document.querySelector ("# village_10> td: nth-child (11)> a")
document.querySelector ("# village_11> td: nth-child (11)> a")
document.querySelector ("# village_12> td: nth-child (11)> a")
document.querySelector ("# village_13> td: nth-child (11)> a")

此订单打开此链接

<a href="/game.php?village=97&amp;screen=place&amp;target=41&amp;" onclick="Accountmanager.farm.openRallyPoint(41, event)"><img src="https://dscs.innogamescdn.com/asset/028772ed/graphic/buildings/place.png" title="" alt="" class=""></a>

可以做得不同吗?只是也许

屏幕 = 地点和目标 =

当脚本看到此文本时单击它?

标签: javascript

解决方案


您可以使用^=querySelectorAll来获取所需的所有锚点的 NodeList,然后click()使用forEach循环获取它们。

setTimeout(function() {
    document.querySelectorAll('[id^="village"] td:nth-child(11) a').forEach(a => a.click());
}, (Math.random() * 1000) + 1000);

更好的方法是给它们一个通用的class,这样您就不必使用 ID。


推荐阅读