Почему диалоги JavaScript (предупреждение / приглашение / подтверждение) не используются широко и не находятся в активной разработке? - PullRequest
10 голосов
/ 05 апреля 2010

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

if(confirm("Are you sure?")) { ... }

Использование alert() для отображения сообщений об ошибках считается дешевым.

А сколько сайтов вы можете назвать, которые используют prompt()?

Итак, вопрос:

  1. Что-то не так с этими диалогами, поэтому их следует избегать? Да, они имеют (очень) ограниченные функциональные возможности и настройки, но когда вам не нужно ничего особенного, использование диалогов JS все еще плохая практика?

  2. Почему в этих диалогах не наблюдалось каких-либо улучшений за последние 10 лет (возможно, дольше), и ни одно из них не запланировано на ближайшее будущее? Разве не было бы неплохо иметь нативный доступ к полностью настраиваемым диалогам на уровне рабочего стола? По крайней мере, было бы полезно добавить диалоги типа ошибка / предупреждение / информация и возможность настраивать заголовки кнопок.

Ответы [ 4 ]

14 голосов
/ 05 апреля 2010

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

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

2 голосов
/ 05 апреля 2010

В некоторых браузерах alert () может привести к тому, что вкладка страницы внезапно захватит фокус.Изредка полезен, в основном раздражает.

1 голос
/ 05 апреля 2010

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

0 голосов
/ 05 апреля 2010

Потому что они уродливы и нарушают пользовательский интерфейс, высунув серый ящик из ниоткуда. Лучше иметь HTML-диалог, соответствующий тематике вашего сайта, и выглядеть на все сто

О да. и они модальные. Это добавляет оскорбление раны

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