基本上我有這個容器包含兩個div。當向下滾動並且div容器被窗口傳遞時,它將粘貼到屏幕的頂部,然後沿着屏幕向下滾動,但容器div內的div與頁腳重疊。阻止Div滾動另一個div
我似乎無法弄清楚如何阻止頁腳被重疊,我希望它在div容器的底部到達剛剛停止移動的頁腳的盡頭,但是在屏幕仍然沿着頁面向後滾動時。目前它所做的只是在通過時關閉屏幕並將其重新放回原來的位置。
這裏是JS以下部分:
function sticky_relocate_2() {
var window_top = $(window).scrollTop();
var div_top = $('.sticky-anchor').offset().top + 210;
if (window_top > div_top) {
$('#right_side_inner_container').addClass('sticky_2')
} else
$('#right_side_inner_container').removeClass('sticky_2')
}
google.setOnLoadCallback(function()
{
$(window).scroll(sticky_relocate_2);
sticky_relocate();
});
DIV ID = right_side_inner_container,這是我想被移動和停止,當它到達頁腳容器的id。 div id =頁腳的頁腳id。
我在其他一些網站上看到,當它到達某個點時,它會從'頂部'css中縮小,所以每一個滾動的像素都會不斷從它上面扣除。我似乎無法弄清楚如何去做。
任何幫助,將不勝感激。
編輯:爲例
如果你看一下右邊的div,當您滾動過去它堅持,我可以做,但屏幕當你不斷滾動下來,片刻後它停止並不會繼續。這就是我正在努力做的事情。
當我使用檢查元素(鉻)頂部的CSS不斷扣除。
編輯2:添加樣式:
#right_side_inner_container {
width 300px;
height: 600px;
background: transparent;
text-align: center;
color: black;
}
#right_side_inner_container.sticky_2 {
width: 300px;
height: 600px;
background: transparent;
position: fixed;
top: 0;
margin-top: -8px;
}
#footer {
width: 100%;
height: 200px;
margin: 5px 0 0 0;
clear: both;
background: blue;
}
我想右內側容器div來阻止它到達頁腳DIV之前。當原始div滾動過去時允許它在滾動過去時跟隨屏幕,粘性類被添加。
從你的評論你說你改變了CSS爲固定(大概與其他風格一起),這是要走的路......減去像素,如上面描述的是一種效率低下的方法,你會介意發佈你的CSS樣式? – anson
當然我加了CSS到帖子 – user1301430
好吧,你有幾乎正確的想法。下面是使用你的概念的一個快速解決方案的小提琴,不介意我添加了模仿你的情況的「絨毛」,只要注意fixie框的JS和CSS樣式:http:// jsfiddle。net/z4q3v/ – anson