повторение document.getElementsByClassName - PullRequest
0 голосов
/ 14 октября 2018

Привет, ребята, я пытаюсь перебрать getElementsByClassName следующим образом:

var i;
for (i = 0; i < 20; i++) { 
if (document.getElementsByClassName("available")[i]==="undefined"){}
else{
 document.getElementsByClassName("available")[i].click();  }



}

если я делаю это в консоли Chrome, это работает нормально, но когда я запускаю его через расширение Chrome, он говорит, что свойство чтения'click' из undefined, знаете ли вы, как я могу решить?

Ответы [ 2 ]

0 голосов
/ 14 октября 2018

Попробуйте что-то вроде этого

var available = document.getElementsByClassName("available"); //collection of elements matching the query

//Loop collection. 
//Skips loop if the available collection is empty
for (var i = 0; i < available.length; i++) {
    available[i].click();
}
0 голосов
/ 14 октября 2018

Ваш оператор if не работает, так как вы не проверяете, является ли тип целевого элемента неопределенным.Попробуйте вместо этого -

document.getElementsByClassName("available")[i]===undefined
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...