我基於另一個腳本,儘管我對JavaScript有點熟悉,但我仍然在學習。寫我的第一個油脂猴子腳本。如何讓innerHTML使用'contains'?
// ==UserScript==
// @name click all "load more" prompts
// @namespace none
// @include http://www.reddit.com/*
// ==/UserScript==
setTimeout('var deleted = 0;var links = document.getElementsByTagName("a");var i = 0;var d = 0;for (i = 0; i < links.length; i++) {var l = links[i];if (l.href) {if (l.innerHTML == "load more comments") {toggle(l); d = 1; } } } , 4000);
現在,問題似乎是,沒有一個innerHTM只是說「加載更多評論」。
相反,它表示類似於「加載更多評論(x回覆)」,其中x可以是任何數字。
是否有一種簡單的方法來檢查並查看innerHTML是否包含術語「加載更多評論」而不是檢查確切的等價性?
這裏是與「裝載更多評論」的鏈接,我指的是網頁:http://www.reddit.com/r/AskReddit/comments/g4c8a/whats_the_funniest_thing_you_have_heard_that_you/
編輯:
以下是更新後的腳本。似乎沒有運行,任何建議?
links = document.getElementsByTagName("a");
var i = 0;
for (i = 0; i < links.length; i++){
var l = links[i];
if (l.href){
if (l.innerHTML.indexOf("load more comments") > -1) {
toggle(l);
}
}
}
謝謝,這非常有幫助。 – some1
我使用更新的代碼編輯了原始問題 - 這看起來如何? – some1