Анимированные диалоговые, модальные окна на JQuery | Уроки по JQuery

dialog_modal_jquery-5319720

В этом примере мы будем говорить о создании диалогового пользовательского окна. Для реализации этого будем использовать всеми любимую библиотеку JQuery и специальный для неё плагин UI Dialog. Этот плагин позволяет выбирать текст, кнопки и их поведение и многие другие параметры окна диалогов. Такие диалоговые окна очень удобны, и похожи на модальные окна в Windows, в них также содержится в верхнем углу кнопка с крестиком для закрытия, и они могут масштабироваться и перемещаться по экрану пользователем.

Demo просмотреть архив

HTML

Как обычно начнём с HTML, это основной код разметки со всеми примерами.

                Open dialog 1  Open dialog 2  Modal dialog #3      Move to top dialog 1  Move to top dialog 2  Modal dialog #4        Enable dialog 1  Enable dialog 2      Disable dialog 1  Disable dialog 2          
This dialog using 'slide/explode' methods to show/hide, plus, can be closed by 'close' button, by 'x' icon and by 'esc' button. This dialog window can be moved using mouse.
This dialog using 'blind/fold' methods to show/hide, plus, can be closed by 'x' icon and by 'esc' button. This dialog window can be moved and resized using mouse.
This is the first modal dialog with some text and 2 buttons. This dialog window can be moved, resized and closed with the 'x' icon.
Another sample of modal dialogs - login forms. The dialog using 'highlight/scale' methods to 'show/hide'. Can be moved and closed with the 'x' icon. Name
Password

CSS / main.css

body {background:#eee; font-family:Verdana, Helvetica, Arial, sans-serif; margin:0; padding:0 } .example { background:#FFF;width:600px; height:200px; font-size:80%; border:1px #000 solid; margin:0.5em 10% 0.5em; padding:1em 2em 2em; -moz-border-radius:3px; -webkit-border-radius:3px } .example button  { width:150px }

JS / main.js

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

$(function(){  // Диалоговое окно Свойства 1  $('#dialog1').dialog({  autoOpen: false,  show: 'slide',  hide: 'explode',  buttons: { 'Close': function() { $(this).dialog('close'); } },  closeOnEscape: true,  resizable: false  });    // Диалоговое окно 1 открыть / закрыть  $('#toggle1').click(function() {  if ($('#dialog1').dialog('isOpen') == true)  $('#dialog1').dialog('close');  else  $('#dialog1').dialog('open');  return false;  });    // Диалоговое окно Свойства 2  $('#dialog2').dialog({  autoOpen: false,  show: 'blind',  hide: 'fold',  closeOnEscape: true  });    // Диалоговое окно 2 открыть / закрыть  $('#toggle2').click(function() {  if ($('#dialog2').dialog('isOpen') == true)  $('#dialog2').dialog('close');  else  $('#dialog2').dialog('open');  return false;  });    // Диалоговое окно Свойства 3  $('#dialog3').dialog({  autoOpen: false,  show: 'fade',  hide: 'fade',  modal: true,  buttons: {  'Ok': function() { $(this).dialog('close'); },  'Close': function() { $(this).dialog('close'); }  },  resizable: false  });    // Диалоговое окно 3 открыть / закрыть  $('#toggle3').click(function() {  if ($('#dialog3').dialog('isOpen') == true)  $('#dialog3').dialog('close');  else  $('#dialog3').dialog('open');  return false;  });    // Диалоговое окно Свойства 4  $('#dialog4').dialog({  autoOpen: false,  show: 'highlight',  hide: 'scale',  modal: true,  buttons: {  'Login': function() {  var name = $('#name').val(), password = $('#password').val();  var mydialog4 = $(this);    if (name != '' && password != '') {  $.ajax({  type: 'POST',  url: 'some.php',  data: 'name='+name+'&pass='+password,  success: function(msg){  alert(msg);  $(mydialog4).dialog('close');  }  });  }  },  'Close': function() { $(this).dialog('close'); }  },  resizable: false,  width: '400px'  });    // Диалоговое окно 4 открыть / закрыть  $('#toggle4').click(function() {  if ($('#dialog4').dialog('isOpen') == true)  $('#dialog4').dialog('close');  else  $('#dialog4').dialog('open');  return false;  });    // Переместить наверх функция  $('#top1').click(function() {  $('#dialog1').dialog('moveToTop');  });    $('#top2').click(function() {  $('#dialog2').dialog('moveToTop');  });    // функция включить  $('#enable1').click(function() {  $('#dialog1').dialog('enable');  });    $('#enable2').click(function() {  $('#dialog2').dialog('enable');  });    // функция закрыть  $('#disable1').click(function() {  $('#dialog1').dialog('disable');  });    $('#disable2').click(function() {  $('#dialog2').dialog('disable');  }); });