2013-11-21 27 views
0

我使用下面的调整jQuery代码来浮动我的WordPress页面边栏。WordPress jQuery驱动静态边栏

function loadStaticSidebar(){ 

    //floating sidebar menu 
    var $sidebar = $("#sidebar"), 
    $window = $(window), 
    offset  = $sidebar.offset(), 
    topPadding = 15; 
    $window.scroll(function() { 
     if ($window.scrollTop() > offset.top) { 
      $sidebar.stop().animate({ 
       marginTop: $window.scrollTop() - offset.top + topPadding 
      }); 
     } else { 
      $sidebar.stop().animate({ 
       marginTop: 0 
      }); 
     } 
    }); 

} 

当我向下滚动页面等等时,它将我想要的内容归档...保持在同一位置。

问题: 我希望它在到达页面底部时停止滚动。目前,永远不会停止捕鱼,它会打破网站。有人告诉我,我需要在加载时测量窗口大小 - 不知道如何去实现....任何示例?

回答

0

试试这个

$(function(){ // document ready 

    if (!!$('#sidebar').offset()) { // make sure "#sidebar" element exists 

    var stickyTop = $('#sidebar').offset().top; // returns number 

    $(window).scroll(function(){ // scroll event 

     var windowTop = $(window).scrollTop(); // returns number 

     if (stickyTop < windowTop){ 
     $('#sidebar').css({ position: 'fixed', top: 0 }); 
     } 
     else { 
     $('#sidebar').css('position','static'); 
     } 

    }); 

    } 

}); 
+0

谢谢斯里达尔的答复。它的作品,但像我的脚本...如果你继续向下滚动它不会中断。这里是一个图像的发生: https://www.dropbox.com/s/gmmvqlpawvo0s7w/issue.PNG – Archie22is

+0

你面对什么问题 –