Спецификация OpenSearch и визуализация поиска в браузере
Теоретический материал
В Internet Explorer 8 для поддержки поиск реализованы следующие функции:
- Подсказки поиска и поставщики поиска. Пользователи могут выполнить нужный поисковый запрос намного быстрее. Для описания подсказок поиска поддерживаются формат JSON и расширенный формат OpenSearch XML.
- Визуальные подсказки поиска. Интегрированный поиск рисунков и другого наглядного содержимого.
- Улучшенный пользовательский интерфейс. С помощью раскрывающегося списка быстрого выбора и контекстного меню ускорителей можно легко выбирать установленные поставщики поиска и переключаться между ними. Кроме того, с помощью поиска в журнале, можно автоматически находить недавно просмотренные веб-страницы, не закрывая окна поиска.
Таким образом, пользователи могут выполнять поиск непосредственно из Internet Explorer, не переходя на сайты поисковых систем. Поставщик поиска по умолчанию также используется для выполнения поиска из адресной строки. Чтобы добавить поставщика поиска в IE 8, нужно позволить пользователям подключить ваш веб-сайт в качестве поставщика поиска в поле поиска. Для этого:
- создается файл описания OpenSearch для поставщика поиска;
- файл описания размещается на веб-сайте, чтобы пользователи смогли установить себе поставщика поиска.
Создание файла описания OpenSearch
Файлы описания OpenSearch - это небольшие XML -файлы, описывающие поставщика поиска для IE 8. В следующей таблице перечислены значения в файле описания OpenSearch 1.1.
Добавление подсказок поиска в файлы описания OpenSearch
В IE 8 поддерживается отображение подсказок (вариантов) поиска. С помощью подсказок поиска можно быстро предлагать пользователям более эффективные поисковые запросы. Чтобы предоставить пользователям подсказки поиска в формате JSON или XML, следует добавить в файл описания следующие элементы.
> <Url type="application/x-suggestions+json" template="http://suggestions.example.com/search.aspx?q={searchTerms}"/>
или
<Url type="application/x-suggestions+xml" template="http://suggestions.example.com/search.aspx?q={searchTerms}"/>
При добавлении дополнительных элементов URL следует убедиться, что тип text/html перечислен первым. Это необходимо для обратной совместимости. Прочие типы могут следовать в произвольном порядке. По умолчанию в Internet Explorer используется URL -адрес типа text/html в качестве универсального URL -адреса поиска, если варианты поиска недоступны или не поддерживаются в более ранних версиях. Однако если существуют URL -адреса для вариантов поиска и в формате XML, и в формате JSON, в Internet
Поддержка предварительного просмотра результатов поиска
Все установленные поставщики поиска автоматически преобразуются в ускорители. Ускорители поддерживают предварительный просмотр, а это дает возможность использовать предварительный просмотр результатов поиска, добавляя элемент PreviewUrl в файл описания OpenSearch, как показано ниже.
<ie:PreviewUrl type="text/html" template="http://suggestions.example.com/search.aspx?q={searchTerms}/>
Если добавить этот элемент в файл описания OpenSearch, можно предоставить пользователям небольшое эскизное окно с результатами поиска. Если пользователь выделит текст на веб-странице, щелкнет значок "Ускорители"и наведет указатель мыши на наименование поставщика поиска, то откроется эскизное окно просмотра (размером 320 x 240 пикселей) с результатами поиска.
Элемент ie:PreviewUrl использует пространство имен, предоставленное объявлением пространств имен Internet Explorer. При использовании этой функции нужно убедиться, что объявление определено в теге OpenSearchDescription: xmlns:ie="http://schemas.microsoft.com/Search/2008/".
Продвижение поставщиков поиска
После создания файла описания OpenSearch службу поиска можно предложить пользователям. Существует два способа продвижения поставщиков поиска:
- предоставить пользователям ссылку или кнопку, указывающую на файл описания. Пользователям придется выполнить ряд действий для установки данного поставщика.
- помочь пользователям обнаружить поставщика. Для этого требуется всего одна строка кода в верхней части веб-страницы. В этом случае браузер Internet Explorer 8 сможет обнаружить данного поставщика поиска при просмотре сайта.
Следующий код добавляет поставщика поиска в список, когда пользователь щелкает ссылку.
<a href="#" onclick="window.external.AddSearchProvider ('http://www.example.com/provider.xml')"> Add Search Provider Example</a>
Данный код вызывает метод AddSearchProvider. Метод AddSearchProvider доступен из внешнего объекта окна. При выполнении этого кода с HTML -страницы в IE8 открывается диалоговое окно "Добавление поставщика поиска".
Поддержка обнаружения поставщиков поиска
Второй способ продвижения поставщика поиска - помочь его обнаружить. Спецификация OpenSearch описывает уведомление о наличии поставщиков поиска путем добавления элемента link в раздел head веб-страницы. Следующий код позволит браузеру Internet Explorer 8 обнаружить поставщика поиска:
<link title="My Provider" rel="search" type="application/opensearchdescription+xml" href="http://www.example.com/provider.xml">
Атрибут rel должен иметь значение search, а атрибут type - application/opensearchdescription+xml. Значение атрибута title отображается в раскрывающемся меню поля быстрого поиска. Атрибут href содержит абсолютный или относительный URL -адрес, указывающий расположение файла описания OpenSearch.