2012-10-11 30 views
2

我試圖找出如何讓我的身體滾動條移動特定div的backgroundPosition - #simpleBG - 到右邊,因爲它滾動向下和隨着它向上滾動而離開。jQuery的 - 滾動條移動div的backroundPosition水平

jQuery的(文件)。就緒(函數($){

 $('#simpleBG').scroll(function(event, direction) { 
    if (direction === 'down') { 
     $('#simpleBG').animate({backgroundPosition: '-=20px 0px'}) 
    } 
    else { 
     $('#simpleBG').animate({backgroundPosition: '0px 0px'}) 
    }  }); 

});

我有backroundpos.js允許背景動畫。只是不確定我是否在這裏使用正確的邏輯和語法。

回答

1

與嘗試:

var $simpleBG = $("#simpleBG"), 
     $root = $(".wrapper"); 

    $root.on("scroll", (function(e,d) { 
     if(d=='down'){ 
      $simpleBG.animate{backgroundPosition: '-=20px 0px'}) 
     } 
     else { 
      $simpleBG.animate({backgroundPosition: '0px 0px'}) 
     }   
    }); 

哪裏.wrapper是你的外在元素的類。

不太清楚,雖然滾動元件上的方向爲方向另一種解決方案可能是:

var tempScrollTop, currentScrollTop = 0; 

    $("#div").scroll(function(){ 

    currentScrollTop = $("#div").scrollTop(); 

    if (tempScrollTop < currentScrollTop) 
    //scrolling down 
    else if (tempScrollTop > currentScrollTop) 
    //scrolling up 

tempScrollTop = currentScrollTop; 
} 
+0

謝謝。完美的作品! –