0

出于某种原因,此代码通常向上/向下滚动到指定 targetDiv 的开头,而不是将页面向下滚动到比 targetDiv 已经所在的末尾更远的​​位置。

function postData(data, url, divAction, targetDiv) {
    $.ajax({
        type: 'POST',
        url: url,
        data: data,
        success: function(response) {
            if (divAction == 'hide') {
                $(targetDiv).hide();
                $(targetDiv).empty();
            }
            if (divAction == 'refresh') {
                $(targetDiv).html(response);
                $('html, body').animate({
                    scrollTop: '+=' + $(targetDiv).offset().top + 'px'
                }, 'fast');
            }
        },
        error: function() {
            alert('Error! Plese try again.');
        }
    });
    return false;
};

任何建议表示赞赏!

4

2 回答 2

2

你应该试试这个:

$('html, body').animate({
    scrollTop: $(targetDiv).offset().top
}, 'fast');
于 2013-04-30T08:40:46.703 回答
0

这是 jsfiddle,它可以工作。`

targetDiv = $('#id1');
$(targetDiv).html("<iframe src=\"www.google.com\" />");
$('html, body').animate({scrollTop: '+=' + $(targetDiv).offset().top + 'px'

}, '快')`

于 2013-04-30T08:55:28.803 回答