Пример
$(document).ready(function() { $("#tabs").tabs(); $("#ftab").click(function(){$("#dial").dialog("open");}); $("#ftab").click(function(){$("#dial2,#dial3").dialog("close");}); $("#stab").click(function(){$("#dial2").dialog("open");}); $("#stab").click(function(){$("#dial,#dial3").dialog("close");}); $("#ttab").click(function(){$("#dial3").dialog("open");}); $("#ttab").click(function(){$("#dial,#dial2").dialog("close");}); //Код первой вкладки (стандартное использование) $("#dial").dialog({width:400,height:210}); //Код второй вкладки (модальное окно) $("#dial2").dialog({modal:true, width:400, height:200, autoOpen:false}); //Код третьей вкладки (диалоговое окно с кнопками) $("#dial3").dialog({buttons:{"Да":function(){ $(this).dialog("close"); $("#result").html("Вы любите фильмы с Брюсом Ли!")}, "Нет":function(){ $(this).dialog("close"); $("#result").html("Вы не любите фильмы с Брюсом Ли.")}}, width:400, height:210, autoOpen:false}); });
С помощью метода dialog Вы можете превратить выбранный элемент в диалоговое окно.
Диалоговое окно - это окно отображающееся поверх текста страницы и содержащее заголовок и поле с содержимым.
Диалоговое окно можно перетаскивать, растягивать и закрывать с помощью иконки "х" в верхнем правом углу окна. Если содержимое превышает размеры диалогового окна, то полоса прокрутки будет автоматически отображена.
С помощью опций и событий перечисленных в таблицах далее на данной странице Вы можете настроить поведение данного виджета под конкретные нужды.
Метод .dialog("open") позволяет отрыть диалоговое окно, а метод .dialog("close") закрыть его.
$(селектор).dialog(опции_или_события)
селектор выбирает элемент, который будет превращен в диалоговое окно.
опции настраивают дополнительные аспекты поведения диалогового окна.
события события связанные с диалоговым окном.
Опции | Описание |
---|---|
autoOpen | Если данная опция имеет значение true, то диалоговое окно будет отрыто автоматически после вызова метода dialog.
При значении false диалоговое окно будет оставаться скрытым до тех пор, пока не будет вызвано .dialog("open"). Значение по умолчанию: true. Пример использования: .dialog({autoOpen:false}) |
buttons | Позволяет задать кнопки, которые будут отображены в диалоговом окне.
Свойство объекта станет текстом кнопки, а значение - это функция обратного вызова, код которой будет выполнен после нажатия на кнопку. Значение по умолчанию: {}. Пример использования: .dialog({buttons:{"OK":function(){$("#result").html("Вы нажали ОК");}},{"Отмена":function(){$("#result").html("Вы нажали Отмена");}}}) |
closeText | Позволяет задать текст кнопки "Закрыть".
Значение по умолчанию: 'close'. Пример использования: .dialog({closeText:'закрыть'}) |
dialogClass | Имя класса, который будет добавлен к диалоговому окну для дополнительной настройки его оформления.
Значение по умолчанию: ''. Пример использования: .dialog({dialogClass:'redwin'}) |
draggable | Позволяет задать будет ли диалоговое окно перетаскиваемым (значение true) или нет (false).
Значение по умолчанию: true. Пример использования: .dialog({draggable:false}) |
height | Позволяет задать высоту диалогового окна в пикселях. При значение 'auto' размеры окна будут подбираться автоматически исходя из размеров содержимого.
Значение по умолчанию: 'auto'. Пример использования: .dialog({height:600}) |
hide | Эффект, который будет использован при закрытии окна.
Значение по умолчанию: null. Пример использования: .dialog({hide:'explode'}) |
maxHeight | Максимальная высота (в пикселях), до которой может быть растянуто диалоговое окно.
Значение по умолчанию: false. Пример использования: .dialog({maxHeight:400}) |
maxWidth | Максимальная ширина (в пикселях), до которой может быть растянуто диалоговое окно.
Значение по умолчанию: false. Пример использования: .dialog({maxWidth:700}) |
minHeight | Минимальная высота (в пикселях), до которой может быть сжато диалоговое окно.
Значение по умолчанию: 150. Пример использования: .dialog({minHeight:200}) |
minWidth | Минимальная ширина (в пикселях), до которой может быть сжато диалоговое окно.
Значение по умолчанию: 150. Пример использования: .dialog({minWidth:200}) |
modal | Если имеет значение true диалоговое окно будет вести себя как модальное (т.е. пользователь не сможет взаимодействовать с другими элементами на странице пока не закроет окно).
Значение по умолчанию: false. Пример использования: .dialog({modal:true}) |
position | Позволяет задать место, на котором будет отображено диалоговое окно после открытия. Местоположение может быть задано:
1. С помощью одиночного строкового значения: center, left, right, top, bottom (центр, слева, справа, сверху, снизу). 2. С помощью массива содержащего x,y координаты в пикселях (например [140,200]) 3. С помощью массива строковых значений (например ['bottom','left'] для отображения окна в нижнем левом углу экрана). Значение по умолчанию: 'center'. Пример использования: .dialog({position:'bottom'}) |
resizable | Если имеет значение true окно может растягиваться.
Значение по умолчанию: true. Пример использования: .dialog({resizable:false}) |
show | Эффект, который будет использован при открытии окна.
Значение по умолчанию: null. Пример использования: .dialog({show:'slide'}) |
title | Позволяет указать заголовок диалогового окна.
Значение по умолчанию: ''. Пример использования: .dialog({title:'Заголовок окна'}) |
width | Задает ширину окна.
Значение по умолчанию: 300. Пример использования: .dialog({width:600}) |
zIndex | Устанавливает zIndex для диалогового окна.
Значение по умолчанию: 1000. Пример использования: .dialog({zIndex:2000}) |
Все обработчики событий принимают два аргумента - стандартный объект event браузера и специальный объект ui.
Синтаксис
$(селектор).dialog({событие:function(event,ui){Код обработчика}}) //или $(селектор).bind("dialogсобытие",function(event,ui){Код обработчика})
Обратите внимание: например для того, чтобы привязать к виджету с id='test' обработчик события create, который выводит сообщение "привет" необходимо будет написать следующий код: $("#test").dialog({create:function(event,ui){alert("Привет")}}).
События | Описание |
---|---|
create | Определяет функцию, код которой будет выполнен, когда виджет будет создан. |
beforeClose | Определяет функцию, код которой будет выполнен перед закрытием окна. Если данная функция вернет false окно не будет закрыто. |
open | Определяет функцию, код которой будет выполнен при открытии диалогового окна. |
focus | Определяет функцию, код которой будет выполнен, когда окно станет активным. |
dragStart | Определяет функцию, код которой будет выполнен в начале перетаскивания диалогового окна. |
drag | Определяет функцию, код которой будет выполнен во время перетаскивания диалогового окна. |
dragStop | Определяет функцию, код которой будет выполнен после того, как перетаскивание диалогового окна завершится. |
resizeStart | Определяет функцию, код которой будет выполнен в начале растягивания диалогового окна. |
resize | Определяет функцию, код которой будет выполнен во время растягивания диалогового окна. |
resizeStop | Определяет функцию, код которой будет выполнен после того, как растягивание диалогового окна завершится. |
close | Определяет функцию, код которой будет выполнен после того, как диалоговое окно будет закрыто. |