2009-02-26 2 views
5

Мне нужны модальные окна, которые говорят пользователю подождать, пока я не закончу некоторые работы на сервере. Похоже, и BlockUI, и jqModal может это сделать.jQuery BlockUI vs. jqModal

У вас есть опыт работы с любым из них? За и против? Я использую ASP.NET MVC.

ответ

7

Я доказал концептуальные модальные диалоги с jqModal и BlockUI, и я могу без всякого сомнения сказать, что BlockUI является «тончайшим» из них. Это позволяет гораздо проще блокировать доступ ко всему, что может выбрать jQuery, и вы просто передаете ему параметр «сообщение» модального DIV. Он автоматически установит отображение: блок и установите его поверх модального наложения.

В дополнение к стандартным модальным диалогам я использую его, чтобы установить диалог «Подождите» на моих интерфейсах ajax, если вызов $ .ajax занимает больше 250 мс.

+0

Для моих нужд BlockUI выглядит наилучшим образом , – Riri

0

Я использовал jqModal совсем немного и очень люблю его. Он очень прост в применении и гибкий, однако его основной целью является модальный диалог.

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

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

0

Я использую BlockUI и люблю его, но слово мудрым, Как известно, ОЧЕНЬ медленно работает в Firefox в Linux. Он достигает пиков CPU до 100%

+0

Звучит как проблема прозрачности – ThiefMaster

0

Я использую & как оба.

Для простых статических модалов ответ @Peter J правильный - BlockUI является фантастическим и очень легким. Вы можете передать скрытый div в качестве сообщения, и он отобразит его как модальный диалог, который можно сделать интерактивным с помощью привязок jQuery и т. Д. Он не предоставляет метод для извлечения сообщения через ajax без ручного кодирования (который противоречит простому совершенству BlockUI - отображать блок-сообщение, пока вы ждете завершения операции ajax).

Для динамических модалов jqModal замечательный, поскольку он может получать модальный контент через вызовы ajax. Он также может обрабатывать триггерный элемент для вас (кнопка, ссылка и т. Д.), Контролируя отображение/скрытие себя, но также предоставляет вам возможности настроить его любым способом.

Чтобы усложниться - я даже использую оба одновременно для отображения диалогового окна с помощью jqModal, а затем блокировать его через BlockUI после отправки, чтобы отобразить пользовательское сообщение. (Один из примечаний: знайте, что z-index по умолчанию для jqModal ниже значения по умолчанию для BlockUI, поэтому, используя их вместе, вы должны установить опцию BaseUI basez выше, чем значение по умолчанию для jqModal 3000.)

Смежные вопросы