1

重複の可能性:
ajaxの更新されたdivをフェードインさせる

AJAX呼び出しのコンテンツを自分のページに表示したいのですfadeInが、このコードを使用する$('#sub_container').html(content).fadeIn();と、アニメーションの速度を超低速に設定しても機能しません(slow(5000)

$('.create').click(function(){
    loadingimg();
    document.title = 'Create Message';
    $.ajax({
        url: 'create.php',
        dataType: 'html',
        success: function(content){
            $('#sub_container').html(content);
            // $('#sub_container').html(content).fadeIn(); <- Fails
        }
    });
});
4

2 に答える 2

5

この関数は基本的に要素を表示するため、要素がすでに.fadeIn()表示されている場合は何もしないように見えます。要素を非表示にすることで、そうではないことを確認できます。

$('#sub_container').hide().html(content).fadeIn();
于 2012-10-02T14:29:03.923 に答える
1

まず、非表示になっていることを確認する必要があります。次に例を示します。

$('.create').click(function(){
$('#sub_container').fadeOut();    // fade out the current content
loadingimg();
document.title = 'Create Message';
$.ajax({
    url: 'create.php',
    dataType: 'html',
    success: function(content){
        $('#sub_container').html(content).stop().fadeIn();    // fade in the new content
    }
});
});

ただし、要素が消えるとコンテンツがジャンプする可能性があるため、必要に応じてそれを考慮する必要があります。

于 2012-10-02T14:29:23.020 に答える