Показать сообщение отдельно
  #1 (permalink)  
Старый 01.02.2021, 04:40
Новичок на форуме
Отправить личное сообщение для MichaelYT Посмотреть профиль Найти все сообщения от MichaelYT
 
Регистрация: 23.01.2021
Сообщений: 7

Перебор массива с фунциями
Приветствую всех!

Есть некий массив:
let zaprosi = ["Запрос1", "Запрос2", "Запрос3"]


Ввод в поисковую строку + клик по кнопке:
document.querySelector('input#search').value ='ЗАПРОСЫ ИЗ МАССИВА ПО ОЧЕРЕДИ';
document.querySelector('button#search-icon-legacy').click();


Также есть код [Код001] (ищет по тексту совпадения - кликает, если не нашел - прокручивает страницу и снова ищет):
const findAndClick = (channelName, delay) => {
  const blocks = Array.from(document.querySelectorAll('div#channel-info'));

  let elem = blocks.find((item) => item.innerText.trim().toLowerCase() == channelName.toLowerCase())

  if (elem) {
    elem.parentNode.parentNode.querySelector('a#thumbnail').click();
  } else {
    window.scrollBy(0, 5500)

    setTimeout(() => {
      findAndClick(channelName, delay)
    }, delay)
  }
}

findAndClick('НАЗВАНИЕ КАНАЛА', 3000)


Собственно, мне нужно всё это соединить, что последовательность была такая:
  • Взял значение "Запрос1" из переменной zaprosi
  • Вставил в document.querySelector('input#search').value='ЗН АЧЕНИЕ';
  • Кликнул по кнопке document.querySelector('button#search-icon-legacy').click();
  • Выполнил "Код001"
  • Далее взял значение "Запрос2" из переменной zaprosi и по кругу... Потом также "Запрос3".
Буду благодарен за помощь и советы!
Ответить с цитированием