2016-09-26 4 views
0

divの高さが1000pxで、本文の高さが2000pxであるとします。私は700pxの画面を持っています。今ページをスクロールすると、bodyとdivの両方をスクロールしたいと思います。 divの終わりが画面に表示されたら固定され、それ以上スクロールしてはならないが、ウィンドウや本体はスクロールできる。正確に1000pxで再びスクロールすると、固定位置を削除する必要があります。文書をスクロールしている間にdivが修正され、画面に最後が表示された場合 - jqueryを使用して

私はこのことを朝から起こそうとしていますが、何も考えられないようにしています。私のコードを見てください:

var fixmeTop = $('div').height(); 
 
var windowHeight = $(window).height(); 
 
var heightDiff = Math.abs(windowHeight - fixmeTop); 
 

 

 
$(window).scroll(function() { 
 

 
    var currentScroll = $(window).scrollTop() + windowHeight; 
 

 
    if (currentScroll >= fixmeTop) { 
 
    $('div').css({ 
 
     position: 'fixed', 
 
     bottom: '0', 
 
     top: 'auto' 
 
    }); 
 
    } else { 
 
    $('.site-content .widget-area').css({ 
 
     position: 'absolute', 
 
     top: '0', 
 
     bottom: 'auto' 
 
    }); 
 
    } 
 

 
});
body { 
 
    height: 2000px; 
 
    background: #000; 
 
} 
 
div { 
 
    height: 1000px; 
 
    background: red; 
 
    width: 100px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<body> 
 
    <div> 
 

 
    </div> 
 
</body>

+2

* scrollmagic *できます - http://scrollmagic.io/で見つけることができます – Johannes

答えて

1

数日前、私は同様の問題に取り組んで、私はgithubの上this jQueryのプラグインを見つけました。それはうまく動作し、試してみてください。

関連する問題