Автозаполнение против выпадающего. Когда использовать? - PullRequest
10 голосов
/ 27 июля 2010

Я где-то читал (не могу вспомнить / где найти) статью о юзабилити в Интернете, описывающую, когда использовать раскрывающиеся списки и когда использовать автозаполнение полей.

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

Например, в форме профиля, где есть ваше текущее занятие, и система предоставляет вам кучу вариантов, когда вы читаете шестой вариант, ваш мозг уже не может вспомнить первый. Этот пример является отличным местом для использования поля автозаполнения, где пользователь вводит что-то, что, по его мнению, будет его профессией, а затем выбирает лучшее из нескольких отфильтрованных вариантов.

Мне бы хотелось услышать ваше мнение по этому вопросу.

Когда я должен использовать раскрывающийся список, и когда я должен использовать поле автозаполнения?

Ответы [ 6 ]

9 голосов
/ 27 июля 2010

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

Для менее чем 5 элементов - радиогруппа или группа флажков (несколько вариантов выбора)) также может быть лучше.

Для списков, содержимое которых является динамическим, например, список контактов, подходит список прокрутки или комбинированный список, потому что вы никогда не знаете, сколько элементов будет в списке.Чтобы обеспечить его управляемость, вам потребуется разрешить некоторую фильтрацию и / или автозаполнение.

Автозаполнение обычно страдает от того факта, что типы пользователей должны соответствовать строке с самого начала.Я ненавижу их, за исключением случаев, когда они используются для завершения значения, основанного на том, что я набрал в этом (тип) поле раньше.Например, то, что в настоящее время предлагают браузеры при заполнении онлайн-форм.

Разрешение пользователю начать печатать в поле со списком обычно имеет тот же недостаток.Но по общему признанию это не нужно, если фильтрация основывается на «like% abc%» вместо «начинается с abc»

При работе со списками, которые могут иметь много похожих элементов, мне действительно нравится способ GMailПоле «To» обрабатывает это.Вы начинаете вводить любую часть чьего-либо имени или адреса электронной почты, и GMail выпадает из списка, представляющего все контакты, чье имя или адрес электронной почты содержит символы, которые вы ввели, такдалеко где-нибудь внутри них.Использование клавиш «вверх» и «вниз» изменяет выбор в раскрывающемся списке (не влияя на то, что вы ввели), а нажатие клавиши ввода добавляет выбранный в данный момент элемент в поле «Кому».Безусловно, лучший пользовательский опыт, который у меня был до сих пор, когда мне приходилось выбирать что-то из списка.

Пока не найдено ни одного компонента, который мог бы это сделать, но его не слишком сложно "подделать", комбинируяполе редактирования и список, который выпадает вниз, когда вы начинаете печатать, и его содержимое фильтруется на основе того, что было напечатано до сих пор.

2 голосов
/ 27 июля 2010

Вот противоположный подход:

худшее время для использования поля автозаполнения - это когда у вас есть конечный и относительно небольшой набор опций, а пользователь не знает диапазона допустимых опций. Например, если вы продаете подержанные автомобили и у вас смешанный пакет брендов, просто перечисление брендов в выпадающем списке более эффективно и проще для просмотра, чем метод автозаполнения.

Возможность помнить последние 5 опций, скорее всего, не имеет значения, если у вас нет огромного списка опций и вы не требуете от пользователя выбрать наиболее релевантный элемент.

Альтернативный подход заключается в использовании обоих. Я считаю, что в Dojo есть виджет, который действует как поле со списком и как поле автозаполнения. Вы можете либо начать печатать, и это сузит возможные варианты, либо вы можете взаимодействовать с ним с помощью мыши и просматривать его как комбинированный список.

2 голосов
/ 27 июля 2010

Я бы сказал, что это зависит от разнообразия в списке и от знакомства с элементами списка.

Если, например, список содержит более 5 марок автомобилей (элементы списка, с которыми я знаком), нет проблем.

Если, с другой стороны, в списке более 5 фамилий, мне может потребоваться еще некоторое время, прежде чем я сделаю выбор.

Вероятно, вам следует просто опробовать оба варианта и довериться своей интуиции, в которой вам легче пользоваться.

2 голосов
/ 27 июля 2010

Я бы использовал 2 критерия,

1) Какова длина списка, если список содержит 5 элементов, лучше использовать комбинированный список, так как это будет проще для пользователя (лучше UX)

2) Если список длинный, как легко пользователю запомнить префикс того, что он / она ищет ... если это непросто, использование автозаполнения не имеет значения ..

1 голос
/ 27 июля 2010

Основное отличие не имеет ничего общего с юзабилити, но больше связано с тем, что определяет приемлемые входные данные.

Обычно вы используете ComboBox, когда у вас есть предопределенный список допустимых входных данных (например, Enum или список профессий).

Поле автозаполнения лучше всего использовать, когда имеется много известных входных данных, НО пользовательский ввод также принимается.Пользователь будет разочарован, если он введет «Программист» в качестве своего занятия, но это не было одним из предопределенных, приемлемых входных данных, и ему будет выдано сообщение о том, что его ввод недействителен.

Сохранитьпомните, что комбинированные списки позволяют вам набирать их, чтобы выбрать первый подходящий вариант.Некоторые типы комбинированных списков (в зависимости от используемой платформы пользовательского интерфейса) даже позволяют текстовым полям произвольной формы в верхней или боковой части поля выполнять поиск или добавление в список.

Грубый лучший способ определитьВАШ пользователь предпочтет тестирование: A / B, поле, пользователь и т. д.

Надеюсь, это поможет вам решить вашу дилемму!

1 голос
/ 27 июля 2010

Я обычно смотрю, насколько большим будет список.Если будет более 15 вариантов, тогда будет проще найти, могут ли они просто начать печатать.

Другое обстоятельство для меня - это когда есть другой вариант, и они могут его свободно печатать.Это по существу устраняет необходимость в двух элементах управления, поскольку вы можете объединить их в один.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...