Jquery - 用于移动div背景的滚动条水平位置

时间:2012-10-11 08:20:44

标签: jquery

我正在努力弄清楚如何让我的正文滚动条将特定div的 backgroundPosition - #simpleBG - 移到右侧当它向上滚动时向左滚动。

  

jQuery(document).ready(function($){

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

});

我有backroundpos.js以允许背景动画。只是不确定我是否在这里使用正确的逻辑和语法。

1 个答案:

答案 0 :(得分: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;
}