我正在嘗試學習撰寫用戶腳本,并認為一個好的簡單起點將是anilist的簡單活動喜歡者,但我一直無法真正喜歡這些活動......
我的用戶密碼:
(function() {
'use strict';
function like(){
const divs = document.getElementsByClassName("like-wrap activity");
for (var i = 0; i < divs.length; i ) {
let button = divs[i].childNodes[2]
if(!button.classList.contains("liked")){
button.click()
}
}
}
var button = document.createElement("Button");
button.innerHTML = "like";
button.style = "bottom:10px;right:10px;position:fixed;z-index:9999999"
button.onclick = like;
document.body.appendChild(button);
})();
有誰知道我做錯了什么?我假設這很明顯我錯過了,因為我是新手...
uj5u.com熱心網友回復:
問題肯定在這一行: const divs = document.getElementsByClassName("like-wrap activity");
getElementsByClassName可以采用多個類名......但它會查找具有所有指定類的元素。
我想這不是你的情況,因為like-wrap在每個元素上都有一個類(我會假設許多元素的包裝器)會很奇怪activity。
我建議你試試這個:
const divs = document.querySelectorAll(".like-wrap .activity");
uj5u.com熱心網友回復:
如果您將選擇器更改為此:
const divs = document.querySelectorAll(".like-wrap.activity .button:not(.liked):nth-child(2)")
然后您可以遍歷所有內容并單擊它們:
for (const div of divs) {
div.click();
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/421933.html
標籤:
下一篇:如果條件不滿足則回傳空字串
