Как добавить стандартный поиск Google на свой собственный сайт ** с автозаполнением **?

Я не спрашиваю о поиске по сайту. Мне интересно, как включить окно поиска Google, которое выполняет поиск по всему Интернету (не ограничиваясь только одним сайтом, таким как поиск по сайту), которое также использует то же поведение автозаполнения, которое вы видите на Google.com.

Некоторые из вас могут помнить iGoogle, веб-портал Google, которым я пользовался и любил много лет, пока они не закрыли его в прошлом году. Я делаю свою собственную замену iGoogle. Я могу достаточно легко добавить текстовое поле вверху, чтобы выполнить поиск, но у меня возникают проблемы с воспроизведением, это поведение автозаполнения JavaScript, которое вы получаете с обычным Google.com.

Итак, начнем с этого:

<form action="https://www.google.com/search" method="get">
<input type="text" name="q" value="" />
</form>

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

3 ответа

Решение

Вам нужно будет использовать некоторые сценарии на стороне сервера и попытаться реализовать решение на основе API предложенных запросов. Больше можно найти по этому вопросу

На стороне клиента попробуйте сделать AJAx-вызов, когда пользователь вводит текстовое поле. Что касается функциональности автозаполнения, я использовал плагин jQuery UI, и он, кажется, работает довольно хорошо.

Ты пробовал это? https://support.google.com/customsearch/answer/2631081

On the Custom Search home page ( https://www.google.com/cse/all ), click the search engine you want.
Click Search features, and then click the Autocomplete tab.
Switch Enable autocomplete to ON.

Я собираюсь принять ответ Теодора как правильный просто потому, что он привел меня на правильный путь; хотя, честно говоря, он действительно не дал мне много, и я действительно придумал решение самостоятельно здесь.

Я обнаружил, что если вы запросите этот URL:

https://www.google.com/s?tch=1&sclient=psy-ab&q=search+term+goes+here&cp=21

куда q Ваш поисковый запрос и cp это позиция курсора при вводе, которая возвращает ответ JSON, который можно проанализировать и преобразовать во что-нибудь пригодное для использования, а затем интегрировать с пользовательским интерфейсом jQuery. (По сути, я только что написал небольшой небольшой скрипт PHP на своем собственном сервере, который открывает этот URL с помощью http://www.php.net/file_get_contents.) Однако я не могу гарантировать, как долго это будет работать, поскольку это кажется очень неофициальным.

Я также использовал расширение HTML автозаполнения jQuery UI от Скотта Гонсалеса, потому что данные, которые Google передает обратно, имеют <b> теги в нем уже, так что работали довольно хорошо.

Другие вопросы по тегам