Как реализовать поиск в автономных документах HTML? - PullRequest
1 голос
/ 16 сентября 2011

Мне нужно написать инструмент, который экспортирует некоторые чаты в автономные файлы HTML. Есть ли возможность добавить поддержку поиска (например, добавить домашнюю страницу index.html, которая содержит поле поиска и показывает результаты поиска)? Общий вопрос: какие инструменты / рамки / что-то еще вы можете посоветовать для этого?

Ответы [ 2 ]

1 голос
/ 16 сентября 2011

Я бы использовал Javascript и создал бы индекс поиска. Взгляните на этот пример (только на немецком языке, но я думаю, вы поймете идею).

1 голос
/ 16 сентября 2011

Я предполагаю, что вы хотите выполнить поиск в браузере, потому что если нет, то утилита grep будет очень эффективной.

Вы можете добавить JavaScript к каждому экспортируемомустраница, которая будет сканировать контент и делать поиск.Вы также можете обрабатывать несколько страниц, создав индексную страницу с «поисковыми данными» и ссылками на каждую подстраницу, но это зависит от объема текста, который вы хотите найти.Поиск на одной странице будет проще.

Базовым рабочим процессом будет:

  • перехватить событие "change" вашего элемента управления поиском (некоторые <input>)
  • циклически просматривайте элементы данных (<tr> в случае таблиц, <li>, если вы используете списки и т. д.) и проверьте, появляется ли напечатанный текст в свойстве textContent этого элемента.

Это самая базовая форма.

Немного более эффективным способом было бы подготовить индексный массив (по сценарию, в памяти), где вы храните textContent (иливсе, что вы хотите найти) и элемент, который его содержит

При циклическом перемещении элементов скрываются элементы, которые не совпадают, и отображаются элементы, которые делают (например, добавляется или удаляется класс"фильтруется") .

...