aliencash
@aliencash
Партизан

Как грузить скрипты яндекс.поиск для сайта только когда они нужны?

Имеем на сайте форму Яндекс.Поиск по сайту в сквозном блоке, например в шапке. В процессе загрузки любой страницы сайта яндекс с помощью кода этой формы формирует поле ввода и кнопку отправки запроса, а так же подгружает еще скрипты https://site.yandex.net/v2.0/js/opensearch.js https://site.yandex.net/v2.0/js/suggest.js и https://site.yandex.net/v2.0/js/all.js что влияет на скорость загрузки страниц сайт, количество запросов, короче говоря все тормозит.

Очевидно, что эти скрипты не нужны, пока пользователь не поставил фокус в поле ввода в форме поиска.

Вопрос: есть ли возможность подгружать эти скрипты только тогда, когда это нужно? Если да, объясните пожалуйста попроще как бы вы решили эту задачу?

UPD: Ну в общем почти сделал, показываю фейковое поле ввода, по клику на него добавляют скрипт поиска по сайту, он подгружает все что надо. только не могу передать туда фокус. когда я это пытаюсь сделать нужных элементов еще нет в DOM. Если прикрутить setTimeout пользователь окажется в ступоре от очевидной задержки. Любые идеи?
  • Вопрос задан
  • 250 просмотров
Пригласить эксперта
Ответы на вопрос 1
По клику на инпут AJAX запросом. Но вопрос, как быстро он подгрузит скрипты, когда кликнет на инпут.
А вообще в JS есть еще асинхронность и т.д. рекомендуется в прочтению. В самом начале в документации на learnjavascript
Ответ написан
Ваш ответ на вопрос

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

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