-
Notifications
You must be signed in to change notification settings - Fork 1
Документация
ℹ️ Документация не полная и так же возможно будет дополнятся, но со временем.
ℹ️ Баг репорты отправлять при помощи раздела "Issues" с как можно детально описанной проблемой, с ошибками и прочими моментами. Так же там при написании вопроса будут бейджики (найдите "Bug").
❗ Если не умеете, не понимаете как описывать проблемы и баги, то лучше не пишите.
Использование отдельной функции не обязательно, функция лишь даёт возможность запоминать в историю посещения из результатов поиска. Ну и разумеется представляет собой полную замену родных js функций, для лучшего контроля поведения функции поиска. Это моя личная интерпретация функции как удобно мне и она представлена в качестве примера. Вы же можете использовать её и изменять в меру своих знаний и смекалки. Так же вместе с плагином идут стили которые используются в моём шаблоне но так же заменяют полностью все родные стили.
❗ При использовании отдельных стилей и скрипта, старое стоит удалить чтобы исключить какой либо конфликт.
Инициализация отдельной функции происходит подключением файла Search.js
или переносе содержимого в отдельный файл. А так же в самом xml
плагине, нужно активировать в изменениях над файлом engine/modules/main.php
правку по замене инициализации.
Если функция не используется
Нужно записать где удобно функцию. Раньше эта функция была просто прописана в теге script в самом ajax-search.tpl
❗ Сейчас шаблон обновлён и этой функции там нету.
var Search = {
changeSearch: function(obj) {
if( $(obj).prop('checked') ) {
setcookie('search_last_viewed', 1);
dle_do_search(dle_search_value);
} else {
setcookie('search_last_viewed', 0);
dle_do_search(dle_search_value);
}
}
}
Она используется для обновления поиска в случае если включена настройка запоминать посещаемые новости и когда происходит выбор исключать уже просмотренные новости из поиска.
Параметр | Описание |
---|---|
result_id | Идентификатор ID главного контейнера подсказок. По умолчанию: searchsuggestions
|
button_class | Указывает кнопку нажатия отображающий поиск. Если задаётся класс, это подразумевает отсутствие какой либо разметки поиска, поиск будет отображаться в режиме popup. По умолчанию: class_name / false
|
box_class | Идентификатор class контейнера поиска для popup режима. По умолчанию: search-box
|
mask_class | Идентификатор class маски для popup режима. По умолчанию: search-mask / false
|
append_result_markup | Идентификатор class для объекта в который поместить разметку search_result_markup . По умолчанию: quicksearch / false
|
result_auto_position | Автоматическая позиция и ширина области result_id
|
delay | Задержка ввода в ms. По умолчанию: 200 мс |
min_search | Минимальное количество символов для поиска. По умолчанию: 2 (Подставляется из настройки dle) |
search_result_area | Идентификатор class для объекта в который поместить результаты ответов в области search_result_markup . По умолчанию false (Будет добавлено в result_id ) |
key_bind | Объект с установками клавиш для различных действий. Далее в секции Hotkey |
history | Запоминать в localstorage историю ранее открытых ссылок из поиска. По умолчанию: false
|
append_history_markup | Идентификатор class для объекта в который поместить результаты истории. По умолчанию: false
|
show_history_timeout | Время через которое показать историю при показе подсказки в режиме popup . По умолчанию: 500 мс / false
|
css_timeout | Время на то, чтобы дать css анимации завершится если она присутствует прежде чем окно будет скрыто. По умолчанию: 205 мс / false
|
history_remove | Идентификатор class для кнопки удаления текущего значения подсказки из истории браузера. По умолчанию: clear-suggest / false
|
history_markup | HTML разметка для области истории. Атрибут ID search-suggest в разметке должен быть обязательным у родительского элемента. |
history_item | HTML разметка для конкретного элемента истории. |
search_markup | HTML разметка основной области поиска для popup режима. |
search_result_wrapper | HTML разметка результатов. Это та часть которая раньше была в ответе обработчика. |
search_result_markup | HTML разметка для области результатов поиска. |
suggestionHistory_count | Количество подсказок в истории. По умолчанию: 5
|
Следующие параметры не стоит трогать если не разбираетесь.
Параметр | Описание |
---|---|
search_delay | Переменная для таймера задержки. |
search_value | Переменная для хранения введённых символов. |
suggestionHistory | Переменная для истории подсказок. |
input | Переменная для input поля. |
is_popup | Переменная для определения статуса popup. |
is_show | Переменная для определения показан ли поиск. |
active_suggest | Переменная для определения статуса отображения истории. |
В функции есть бинды горячих клавиш на клавиатуре для различных действий.
Подробнее содержимом объекте key_bind
Имя ключа в key_bind
|
Описание | По умолчанию |
---|---|---|
show | Устанавливает фокус в поле Input если работает в режиме Inline . В случае popup будет открывать форму, предварительно её добавив. |
\ |
close | Если фокус установлен на Input то закроет форму поиска для popup режима. Для Inline очистит результаты. |
Esc |
moveDown/moveUp | При фокусе в Input и наличии видимых подсказок истории или результатов поиска, пытается сместить указатель на объекте в соответствующем направлении. |
ArrowDown / ArrowUp |
currClick | Если смещение указателя успешно, по нажатию будет попытка открыть ссылку. | Enter |
Определить другие клавиши можно на этой странице [Клавиатура: keydown и keyup]. На тестовом стенде нажимая в поле ввода можно наблюдать события, вам нужно смотреть на
key
, его и используйте в объектеkey_bind
.Использовать какие-то значения не обязательно, а так же можно и вовсе выключить Hotkey выставив
false
для key_bind.