JQuery UI: диалоговое отображение/скрытие эффектов с опциями
Можно ли указать параметры отображения и скрыть параметры диалогового окна в пользовательском интерфейсе jQuery.
Например, вместо:
$('#dialog').dialog({
show: 'fade'
});
Что-то вроде:
$('#dialog').dialog({
show: {effect: 'fade', speed: 1000}
});
(Этот код, конечно, не работает).
То, что я действительно пытаюсь использовать, - это "полный" метод внутри эффекта или функция обратного вызова, поэтому я могу выбрать текст после того, как эффект будет выполнен.
Если кто знает, спасибо.
Ответы
Ответ 1
Вы можете использовать это:
$("#dialog").dialog({
autoOpen: false,
hide: 'fold',
show: 'blind'
});
И установите два разных эффекта, чтобы скрыть и показать.
Вы не можете использовать метод "полный". По крайней мере, не с фактическим выпуском. Эта функция запланирована для версии 1.9
надеюсь, что это поможет
Ответ 2
Я не знаю, как указать все параметры, но мне удалось указать скорость, которая есть вариант, который у вас есть в вашем примере. Я сделал это следующим образом:
$('#dialog').dialog({
show: {effect: 'fade', duration: 250}
hide: {effect: 'fade', duration: 5000}
});
продолжительность - это миллисекунды, которые ожидают анимации. Я нашел это, пройдя через javascript с помощью firebug.
Ответ 3
Чтобы просмотреть параметры каждого эффекта, вы можете перейти в http://docs.jquery.com/UI/Effects и нажать "Эффект", который вы хотите сейчас задать параметры.
Например http://docs.jquery.com/UI/Effects/Bounce
О, и, кстати, у эффекта Fade нет никаких конкретных аргументов. Если вы используете эффект Bounce здесь пример кода:
$( '#dialog' ).dialog({
show: {effect: 'bounce', duration: 350, /* SPECIF ARGUMENT */ times: 3}
});
Ответ 4
Я хотел бы добавить, что вы можете указать продолжительность глобальных эффектов, добавив в документ следующее.
$.fx.speeds._default = duration;
продолжительность может быть опцией ( "медленная", "быстрая" и т.д.) или числом в миллисекундах
Ответ 5
position: {my: "bottom", at: "center", of: window} означает, что нижняя сторона идет вверх к центру отображаемого окна
Ответ 6
Попробуйте следующее:
snippet.dialog({
open: function(event, ui) {
snippet.hide();
snippet.fadeIn();
}});