Когда модальные диалоги действительно необходимы? - PullRequest
9 голосов
/ 12 декабря 2008

Модальные диалоги - это зло, но я продолжаю читать "Вы должны удалить модальные диалоги , когда это возможно "

Когда невозможно удалить модальные диалоги? Я имею в виду, какие действительно модальные задачи заставляют нас использовать злые модальные диалоги?

Наиболее распространенным примером является «Вы хотите сохранить?» Я думаю, что это проблема концепции того, чтобы пользователь нажимал Сохранить, а не помнил, что пользовательский ввод является священным . Если вы только что сохранили автоматически с возможностью отмены или изменения, вам не нужно спрашивать пользователя, хотят ли они сохранить.

  • "Вы уверены, что хотите удалить?" Undelete
  • "Вы уверены, что хотите бросить?" Почему ты спрашиваешь это? Ты что тщеславный?

Зачем нам нужны модальные диалоги?

EDIT

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

РЕДАКТИРОВАТЬ 2

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

Дубликат: Когда приемлем модальный интерфейс ?

Ответы [ 3 ]

6 голосов
/ 12 декабря 2008

Варианты использования для модальных диалогов

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

(Источник: Википедия )

Когда я их использую

В случаях, когда мешать им делать глупости абсолютно обязательно. В моей компании есть веб-приложение, в котором пользователи иногда покидают страницу до окончания своей работы. Мы просим их использовать модал (стандартная функция onbeforeunload JavaScript), если они не сохранили свою работу.

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

Редактировать : Мы не сохраняем их работу автоматически, когда они покидают страницу. Мы делаем в другое время, но не когда они покидают страницу, отсюда и модал. Я написал, что может пойти и сохранить их работу, когда они покидают страницу, но не было бы «хорошей» идеей реализовать ее, особенно если они случайно удалили свою работу и не хотели, чтобы она автоматически сохранялась.

1 голос
/ 12 декабря 2008

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

0 голосов
/ 30 июля 2010

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

...