0

ページをスクロールするときに固定divが必要ですが、上部と下部の値の間に..今、このコードがあり、動作しますが、スクロールでページの下部を見つけたときに停止する解決策が見つかりません. 400px (フッターの高さ) のボトム ギャップが必要です。

jQuery(document).ready(function () {
    var el = jQuery('#news_right_cont');
    var elpos = el.offset().top;
    var gap = 174;
    jQuery(window).scroll(function () {
        var y = jQuery(this).scrollTop();
        if (y < elpos) {
            el.stop().animate({
                'top': 174
            }, 0);
        } else {
            el.stop().animate({
                'top': y - elpos + gap
            }, 0);
        }
    });
});

解決策を見つけていただければ幸いです..ありがとう

4

1 に答える 1

0

以下を使用して、スクロールがページの下部に到達したかどうかを確認できます

 if (document.documentElement.clientHeight + y >= document.body.offsetHeight) {
        //add your conditions                
    }

if else の代わりに

if (y < elpos) {
            el.stop().animate({
                'top': 174
            }, 0);
        } else {
            el.stop().animate({
                'top': y - elpos + gap
            }, 0);
        }

以下を追加

if (document.documentElement.clientHeight + y + 400 < document.body.offsetHeight) {
                             el.stop().animate({ top: y - elpos + gap }, 0);
            }

基本的に制限内でのみスクロールします。`document.documentElement.clientHeight + y + 40 の数字 400 は、フッターの位置に基づいて変更できます

于 2013-01-31T23:52:47.317 に答える