1

スライドアップを終えた後、コンテンツの奇妙なフラッシュがあります。私は追加しました:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

コードの先頭に移動しますが、ページ全体がジャンプしてスライドダウンが発生します

私の解決策は何ですか?

これが念のための私のコードです:

$("#contentbottom").slideUp(500, function() {
var dataString = 'type='+t;
$.ajax({
    type: "POST",
    url: link,
    data: dataString,
    success: function(msg)
    {
        $("#contentbottom").empty().append(msg);
    },
    error: function (XMLHttpRequest, textStatus, errorThrown)
    {
        alert('error: unable to load the additonal info');
    },
    complete: function()
    {
        $("#contentbottom").slideDown(500);
    }
});
});
4

1 に答える 1

0

私の推測では、マークアップが表示されていないの$("#contentbottom").empty().append(msg);は、AJAX 応答が取り込まれているため、ブラウザーが新しいコンテンツにフラッシュ/スクロールダウンしてから、一番上に戻るということです。

#contentbottom要素が空のときに要素を非表示にする CSS スタイルがない場合、それは一部の問題である可能性があります。Yu は$('#contentbottom').hide()、AJAX 呼び出しの前に、slideUp ハンドラーで行うことができます。次に$("#contentbottom").empty().append(msg).show()、success ハンドラーで...

于 2012-10-16T17:49:47.763 に答える