Может любой говорить мне о библиотеке модального диалогового окна jQuery, которая не сосет

основанные на jQuery модальные диалоговые окна являются большими, пока Вы делаете столько, сколько пример говорит Вам. Мне нужна основанная на jQuery библиотека модального диалогового окна, которая должна иметь следующие характеристики:

Идеальная реализация:

   function showDialog(values)
    {
      processToChangeDom(values);
      changeDivTobeDisplayed();
      modalDialog.show();
    }
  • Это должно быть быстро, что-то как добавление и связывать диалоговое окно на StackOverflow. Большинство библиотек берет вечность для загрузки диалогового окна его необычными эффектами и материалом.

  • Я хочу назвать его с помощью сценария. Покажите скрытое отделение или встроенный элемент промежутка. Большая часть разговора библиотек, заполняющего привязку рэлом, классом и видом href =#hiddenDiv вещей. Я должен смочь к тому, что я хочу, не добавляя ненужные атрибуты к моей привязке. Что-то вроде этого

  • Это должно отразить изменения, которые я вношу в DOM в скрытом Отделении. Я использовал facebox и узнал, что он делает копию скрытого отделения, и изменения в DOM не размышляет над модальным окном.

  • Я должен смочь, называют близкое модальное отделение, использующее JavaScript, и также присоединяют beforeOpen и afterClose обработчики к действию.

У кого-либо есть какие-либо предложения? Я уже попробовал facebox, simplemodal и целый диапазон библиотек, большинство из них не поддерживает один или другие из этих функций, которые я описал выше.

6
задан Ritesh M Nayak 29 March 2010 в 11:56
поделиться

7 ответов

Попробуйте SimpleModal. Я нашел его API довольно приятным.

3
ответ дан 9 December 2019 в 20:41
поделиться

Вы изучали jQuery UI? http://jqueryui.com/demos/dialog/

3
ответ дан 9 December 2019 в 20:41
поделиться

ThickBox работает очень хорошо, особенно если вы хотите делать такие вещи, как видео или мигать внутри модальных окон.

1
ответ дан 9 December 2019 в 20:41
поделиться

Попробуйте BlockUI . Я обнаружил, что это довольно хорошо.

0
ответ дан 9 December 2019 в 20:41
поделиться

jquery-ui dialog Я обнаружил, что он легкий и динамичный. Вот пример того, как вы можете использовать его в функции

  function display_alert(message,title) {
    title = title || "Alert";
      $('#alert').text(message); // the message that will display in the dialog

      $("#alert").dialog({
          autoOpen: false,
          bgiframe: true,
          modal: true,
        title:title,
        open: function() {
        },
        close: function (){
            $(document).unbind('keypress'); 
        },
          buttons: {
              OK: function() {
                  $(this).dialog('close');
              }
          }
      });
    $('#alert').dialog('option', 'title', title);
      $("#alert").dialog('open');
  }
1
ответ дан 9 December 2019 в 20:41
поделиться

Я сам изучил довольно много модальных окон, и лучшее, что я придумал, это ThickBox. jquery UI box тоже был хорош, но мне не понравилось, как он обрабатывает кнопку "назад".

Thickbox покрывает пункты 1-3 в вашем списке требований. Обработчики четных нажатий могут быть легко добавлены, поскольку исходный код не слишком сложен.

0
ответ дан 9 December 2019 в 20:41
поделиться

Диалог пользовательского интерфейса jQuery делает почти все, что вы спрашиваю. Кроме того, я не заметил, что отображение занимает очень много времени. Вам даже не нужно иметь элемент DOM, чтобы использовать его. В виджетах пользовательского интерфейса хорошо то, что вам нужно загрузить только те компоненты, которые вам нужны, а также ядро. Они также широко доступны в сетях CDN, поэтому вполне возможно, что клиент пользователя уже загрузил для него JS.

 $(function() {
      $('<div title="I am a dialog"><p>Put whatever you want in here</p></div>')
           .dialog({
               autoOpen: true,
               modal: true,
               open: function(event,ui) { ... },
               close: function(event,ui) {
                         ...
                         $(this).dialog('destroy');
                      }
               draggable: false,
               resizable: false,
               ...
            })
  });
3
ответ дан 9 December 2019 в 20:41
поделиться
Другие вопросы по тегам:

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