@TheRock_007

Как дождаться отображения div?

Есть функция которая имитируется действия человека
function Save() {
  var arrow = document.getElementsByClassName('sf-feed')[0];
  arrow.click();
  var saveV = document.getElementsByClassName('sf-menu-item')[0];
  saveV.click();
}

она должна выполнится после отображения div на котором есть елементи с вышеперечисленными класами.
Проблема в том что после вызова в переменних значение undefined, div не успевает отобразится.
Как дождаться загрузки div чтоб функция выполнилась?
setTimeout не работает!
  • Вопрос задан
  • 204 просмотра
Решения вопроса 1
alsopub
@alsopub
Ну попробуйте так чтоли:
function Save() {
  var arrow = document.getElementsByClassName('sf-feed')[0];
  if (arrow) {
    arrow.click();
    var saveV = document.getElementsByClassName('sf-menu-item')[0];
    saveV.click();
  } else {
    setTimeout(Save, 500);
  }
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@GreatRash
Алексей предложил ужасное решение, фактически костыль. В DOM есть специальный объект для таких случаев.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы