[Функция] slideDown(speed, callback)
Раздел "Effects"
Функция делает видимыми все подходящие элементы до определенной установленной высоты и запускает необязательную функцию обратного вызова (callback) после выполнения основной функции.
Параметры
slideDown(speed, callback)
1.0
speed: значение скорости, строка представленная одним из трёх вариантом скоростей ("slow", "normal", or "fast") или в миллисекундах (например 1000)
callback: функция выполянейтся, когда анимация будет завершена, выполняется единажды, для каждого анимируемого элемента
function callback(eventObject) { this; // элемент }
Описание
Анимируется только высота элемента, выполняется для всех элементов с использованием "скользящего" метода. Для jQuery 1.3 свойства vertical padding и vertical margin так же анимированы, что делает сглаживающий эффект.
Примеры
Пример:
Анимировать все элементы div, с помощью эффекта скольжения вниз, и после чего отображать их приблизительно 600 милисекунд.
"jQuery"
$(document.body).click(function () { if ($("div:first").is(":hidden")) { $("div").slideDown("slow"); } else { $("div").hide(); } });
"HTML"
Click me! <div></div> <div></div> <div></div>
"CSS"
div { background:#de9a44; margin:3px; width:80px; height:40px; display:none; float:left; }
"Живой пример jQuery"
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <link href="http://test-drupal.ru/themes/slyweb/css/jqueryiframe.css" rel="stylesheet" type="text/css"/> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script> <script> $(document).ready(function(){ $(document.body).click(function () { if ($("div:first").is(":hidden")) { $("div").slideDown("slow"); } else { $("div").hide(); } }); }); </script> </head> <body class="iframe"> Click me! <div></div> <div></div> <div></div> </body> </html> <style> div { background:#de9a44; margin:3px; width:80px; height:40px; display:none; float:left; } </style>
Пример:
Анимировать все элементы input с эффектом скольжения вниз, анимация выполняется в течение 1000 милисекунд. Как только анимция выполнена, поле input изменяется, особенно поле в центре, которое получает событие focus.
"jQuery"
$("div").click(function () { $(this).css({ borderStyle:"inset", cursor:"wait" }); $("input").slideDown(1000,function(){ $(this).css("border", "2px red inset") .filter(".middle") .css("background", "yellow") .focus(); $("div").css("visibility", "hidden"); }); });
"HTML"
<div>Push!</div> <input type="text" /> <input type="text" class="middle" /> <input type="text" />
"CSS"
div { background:#cfd; margin:3px; width:50px; text-align:center; float:left; cursor:pointer; border:2px outset black; font-weight:bolder; } input { display:none; width:120px; float:left; margin:10px; }
"Живой пример jQuery"
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <link href="http://test-drupal.ru/themes/slyweb/css/jqueryiframe.css" rel="stylesheet" type="text/css"/> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script> <script> $(document).ready(function(){ $("div").click(function () { $(this).css({ borderStyle:"inset", cursor:"wait" }); $("input").slideDown(1000,function(){ $(this).css("border", "2px red inset") .filter(".middle") .css("background", "yellow") .focus(); $("div").css("visibility", "hidden"); }); }); }); </script> </head> <body class="iframe"> <div>Push!</div> <input type="text" /> <input type="text" class="middle" /> <input type="text" /> </body> </html> <style> div { background:#cfd; margin:3px; width:50px; text-align:center; float:left; cursor:pointer; border:2px outset black; font-weight:bolder; } input { display:none; width:120px; float:left; margin:10px; } </style>
Версия jQuery 1.4.2
Документ создан 2010-08-21