@maiskiykot
Free coder

Как скрыть элементы dom в скрипте?

Нашел скрипт Goocompleter, основанный на mootools. Все работает отлично, но вот один нюанс не могу победить - если не выбираешь значения из списка автодополнения, то список продолжает висеть. Как сделать, чтобы он очищался по таймауту или по переходу на другое поле автозаполнения? Сам скрипт большой - не знаю: как тут его прикрепить. Только ссылка на исходники: Скрипт Заранее всем фенкс!
  • Вопрос задан
  • 123 просмотра
Решения вопроса 1
@maiskiykot Автор вопроса
Free coder
Нашел ответ сам на просторах тырнета. Удалось прикрутить таймер прямо к процедуре формирования выпадающего списка. Вообще, удивительно, что автор написал неплохую библиотеку, но не позаботился об очистке хвостов. Особенно, если приходится вводить свое значение в поле с автокоплитом.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
sfi0zy
@sfi0zy Куратор тега JavaScript
Creative frontend developer
Без работающей демки сложно говорить, но там много раз повторяется следующая конструкция:
// Hide typebox
if (this.options.use_typebox)
    this.typebox.empty();

// Hide new result list
if (this.options.use_listbox)			
    this.listbox.setStyle('display', 'none');


Думаю эти действия и нужно использовать, чтобы скрывать элементы в вашем случае. Получится что-то такое:

var myAutocompleter = new GooCompleter(/*...*/);

if (/* что-то случилось */) {
    myAutocompleter.typebox.empty();
    myAutocompleter.listbox.setStyle('display', 'none');
}
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы