tigroid3
@tigroid3
PHP, YII2, SQL, Postgres, Docker, SPHINX, GIT

Как выполнить скрипт независимо от готовности страницы?

У меня есть страничка с формой.
На кнопке стоит обработчик
$('.success-pay').click();
Но скрипт запускается только после загрузки страницы полностью. Как сделать, чтобы он выполнялся сразу как переходит на страницу?
  • Вопрос задан
  • 283 просмотра
Решения вопроса 1
27cm
@27cm
TODO: Написать статус
А как же JS найдёт эти самые элементы с классом success-pay, если страница ещё не готова? Как минимум должен загрузиться HTML DOM, а в вашем случае ещё и jquery. Чтобы найти и разобраться с другими причинами задержек, смотрите вкладку DevTools Network.

И это $('.success-pay').click(); не обработчик, а триггер события.

Если хотите максимальной скорости, то можно переписать на JavaScript и разместить код перед закрывающим тегом body:
<script>
var el = document.getElementsByClassName('success-pay');
for (var i = 0; i < el.length; i++) {
    el[i].click();
}
</script>
<!-- Дальше уже подключайте jquery и прочее -->
<script src="//code.jquery.com/jquery-2.1.4.min.js"></script>
</body>
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
tennalian
@tennalian
а смысл? у вас так долго грузится страница?

почитайте про то, как рендерятся страницы, вы уверены, что ваш обработчик не тормознет загрузку или не сломает стили?

а если по факту, ваш обработчик находится в чем-то вроде $(function(){}) или $(document).ready, из-за чего грузится после загрузки страницы. И да, без jquery не работает, имейте в виду.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы