Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.07.2020, 21:21
Интересующийся
Отправить личное сообщение для vladik3333 Посмотреть профиль Найти все сообщения от vladik3333
 
Регистрация: 30.07.2020
Сообщений: 10

Изменение номера элемента в document.querySelectorAll внутри цикла for
Здравствуйте.
На сайте присутствует код:
<span class="task">текст1</span>
<span class="task">текст2</span>
<span class="task">текст1</span>
<span class="task">текст3</span>
<span class="task">текст2</span>


Есть функция, в которой определяется общее количество элементов с нужным классом, и в ней нужно в соответствии с полученным значением выполнить цикл с изменением значения в индексе document.querySelectorAll, а именно в квадратных скобках []:
function test1(){
var ob =[...document.querySelectorAll("span[class='task']")].length;
alert(ob);
//в данном примере будет 5
if(ob==5){
  for (var i = 0; i < ob; i++) {
    var t1 = document.querySelectorAll("span[class='task']")[0].textContent;
    alert(t1);
  }
}
}


Ну то есть каждый проход должно меняться значение, то есть так [0]->[1]->[2]->[3]->[4], и соответственно alert в данном примере должен выводить по очереди текст1->текст2->текст1->текст3->текст2

Заранее благодарен за помощь

Последний раз редактировалось vladik3333, 31.07.2020 в 21:40.
Ответить с цитированием
  #2 (permalink)  
Старый 31.07.2020, 21:28
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

vladik3333,
снова подожду переводчика.
Ответить с цитированием
  #3 (permalink)  
Старый 31.07.2020, 22:28
Интересующийся
Отправить личное сообщение для vladik3333 Посмотреть профиль Найти все сообщения от vladik3333
 
Регистрация: 30.07.2020
Сообщений: 10

Проблему решил, вроде работает
function test1(){
var twe = document.querySelectorAll("span[class='task']");
var ob = [...twe].length;
if(ob==5){
  for(var i = 0; i < twe.length; i++) {
    var t1 = twe[i].textContent;
    alert(t1);
  }
}
}
Ответить с цитированием
  #4 (permalink)  
Старый 31.07.2020, 22:53
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

vladik3333,
<!doctype html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<span class="task">текст1</span>
<span class="task">текст2</span>
<span class="task">текст1</span>
<span class="task">текст3</span>
<span class="task">текст2</span>

<script>
function test1(){
var twe = document.querySelectorAll("span[class='task']");
var ob = twe.length;
if(ob == 5) for(var {textContent} of twe) alert(textContent);
}
test1()
</script>
</body>
</html>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Можно ли применять setTimeout внутри цикла? MC-XOBAHCK Общие вопросы Javascript 12 27.04.2018 17:34
Изменение цвета элемента в зависимости от id элемента на координате deniskutovskiy Events/DOM/Window 10 10.10.2015 11:43
Как отловить изменение computedStyle элемента danik.js Events/DOM/Window 8 25.10.2012 16:40
Как сделать реакцию на изменение любого элемента формы. Mik Events/DOM/Window 3 28.07.2011 08:52
Обработка события элемента внутри создавшего его объекта pauluss Общие вопросы Javascript 10 10.09.2010 17:01