1

我想替换一个 div 的内容,然后让它可见

$("#btn").click(function () {
$('#div01').load('about.php');
$("#div01").slideDown("slow");
});

但是 div 在内容更改之前变得可见,因此用户可以看到以前的内容 - 这不是想法。

4

3 回答 3

1

函数的第二个参数load()可以用作回调函数。所以slideDown()只有在加载完成时才会发生:

$("#btn").click(function () {
    $('#div01').load('about.php', function(){
        $("#div01").slideDown("slow");
    });
});
于 2013-05-20T10:30:09.710 回答
0

试试这个:

$("#btn").click(function () {
    $('#div01').load('about.php',function(){
        setTimeout(function(){$("#div01").slideDown("slow")},100);
    });
});
于 2013-05-20T10:33:56.027 回答
0

.load()是一个 ajax 函数,所以在 ajax 完成后尝试获取它jQuery.ajaxComplete()

$("#btn").click(function () {
     $('#div01').load('about.php');
});

$.ajaxComplete(function(){
   $("#div01").slideDown("slow");
});
于 2013-05-20T10:34:37.803 回答