выполнять функции по очереди
только начал изучать jQuery, извиняюсь, если неправильно или непонятно назвал тему.
сделал такой скрипт аяксовой загрузки
$(document).ready(function(){
$('.artmenu').find('a').click(function(){
$.ajax({
beforeSend: function(){
$('.article').slideUp("slow")
},
complete: function(){
$('.article').slideDown("slow");
},
url: '/content.php',
type: "POST",
data: ({hui : this.href.split(location.hostname+'/#')}),
success:function(msg){
$('.article').html(msg);
}
});
})
});
проблема в том, что данные загружаются, когда див ещё не до конца свернулся. как сделать, чтоб див сначала свернулся, потом в него загрузились данные, а потом красиво развернулся? |
slideDown в success
|
Цитата:
|
Ну тогда аякс в колбэк slideUp, slideDown в success.
$(elem).slideUp('normal', function () {
$.ajax(…);
});
|
Цитата:
а разворачиваться начиналось, после закачивания slideUp или после 600мс? |
Цитата:
вы меня простите, я новичок в программировании, только в школе кубасик изучал ^_^
$(document).ready(function(){
$('.artmenu').find('a').click(function(){
$('.article').slideUp("slow", function(){
$.ajax({
url: 'content.php',
type: "POST",
data: ({hui : this.href.split(location.hostname+'/#')}),
success:function(msg){
$('.article').html(msg);
$('.article').slideDown("slow");
}
});
});
})
});
как в этом случае передать переменную this.href во вложенную функцию? |
$(document).ready(function(){
$('.artmenu').find('a').click(function(){
var obj = this;
$('.article').slideUp("slow", function(){
$.ajax({
url: 'content.php',
type: "POST",
data: ({hui : obj.href.split(location.hostname+'/#')}),
success:function(msg){
$('.article').html(msg);
$('.article').slideDown("slow");
}
});
});
})
});
|
вот спасибо огромное, сейчас всё так красиво получается (;
|
| Часовой пояс GMT +3, время: 19:52. |