Вариантов немного.
Найти элемент, который появляется/меняет состояние, когда сайт готов к работе
Если есть спиннер, дождаться его окончания.
Если есть аякс запросы, их можно чекать через $.active
Если при нажатии что-то должно произойти, кликать, пока не произойдет (ваш вариант)
Поставить слип на n секунд
Если работает какая-то анимация и она мешает, выключить ее