2011-11-30 94 views
0

我想獲得一個div下滾動頁面。它工作得很好,但在div在頁面的底部卡住,當我嘗試過遠滾動:jquery滾動div推動頁面底部的內容

$(function() { 
    var $sidebar = $("#sidebar"), 
     $bigPics = $("#bigPics"), 
     $window = $(window), 
     offset = $sidebar.offset(), 
     topPadding = 20, 
     turnoff = 1; 
    var documentHeight = $(document).height(); 

    $window.scroll(function() { 
     if (($window.scrollTop() > offset.top) && (documentHeight - 1200 > parseFloat($sidebar.css("marginTop")))) { 
      $sidebar.stop().animate({ 
       marginTop: $window.scrollTop() - offset.top + topPadding 
      }); 
     } else { 
      $sidebar.stop(); 
     } 
    }); 
}); 

如何讓我回滾動的頁面中再次啓動任何想法?提前乾杯

回答

0

用途:

.sidebar{ 
position:fixed; 
bottom:0; 
right:0; 
} 

/* for browser not supporting fixed position as ie6 */ 
.oldBrowser .sidebar{ 
position:absolute; 
top:expression(documentElement.scrollTop + body.scrollTop + yourExtraValue); 
} 

你需要確定什麼時候有一個老的瀏覽器和類」 .oldBrowser添加到:

$sidebar.css({'position':'absolute','top':0,'right':0}); 
var extraValue=0,sidebarHeight=$sidebar.height(); 
$window.scroll(function() { 
    $sidebar.stop(true,true).animate({ 
     top: $window.scrollTop() + $window.height() - sidebarHeight + extraValue 
    }); 
}); 

您可以輕鬆地使用CSS實現這一目標body標籤元素當文檔準備就緒時,您可以在服務器端或客戶端執行此操作

0

我已經使用jquery插件

https://github.com/garand/sticky

停止在底部:

(函數($){

var limit_bottom=$('#footer').height(); 
$('.product-box').sticky({topSpacing:0, bottomSpacing:limit_bottom}); 

})(jQuery的);