0

我有一个 div,一旦用户向下滚动指定数量,我想滑入。它最初可以工作,但之后 div 在每次滚动操作时都会向左移动一点,而不是保持原位。任何人都知道为什么会这样?

  var opening = false;
  var closing = false; 
 $(window).scroll(function(){
     var windowHeight = $(window).height();
     var windowScroll = $(window).scrollTop(); 
     var position1 = $("#Support").offset().top;         
    if ( windowScroll > (position1 - (windowHeight/2)) )  
     {
        if (!opening) {
            opening = true;
            closing = false;
            $("#SupportImage1").stop().animate({
                left: "1200px"                  
              }, 1500, function(){
                  opening = false;
                  });
            }            
     }
     else
     {
        if (!closing) {
            closing = true;
            opening = false;
             $("#SupportImage1").stop().animate({
                left: "100%"                    
              }, 1400, function() {
                  closing = false;
              });                
        }
     }       
 });
4

1 回答 1

0

滚动条很可能会影响您的宽度计算。

每次您针对滚动条运行该功能时,您都会添加总屏幕宽度加上滚动条的偏移量。

于 2012-09-27T14:57:14.867 回答