window.onscroll = scrollCheck;

var lastPos = 0;
var currPos = 0;
var kf = 6;
var scrolling = 0;

function scrollTop() {
  if (self.pageYOffset){
    return self.pageYOffset;
  }else if (document.documentElement && document.documentElement.scrollTop) { 
    return document.documentElement.scrollTop; 
  }else if (document.body) { 
    return document.body.scrollTop; 
  }else return 0;
}

function scrollDown(f,t) {

  var el = document.getElementById('scroll_panel');
  var step = (t - f) / kf; 

  f = f + Math.round (step);
  if (Math.round (step) == 0) f = t;
  if (f > 4)
  el.style.top = f + 'px';

  if (f==t) { scrolling = 0; }

  if (scrolling == 1) {
    setTimeout('scrollDown('+f+','+scrollTop()+')',20);
  } else { 
    lastPos = t; 
    setTimeout("scrollCheck()",200);
  }
                
}

function scrollCheck() {

  if (scrolling==0) {
    var s = scrollTop();

    if (currPos != s) {
       currPos = s;
       setTimeout("scrollCheck()",200);
    }  else {
      if (lastPos<s) direction = 0; else direction = 1;
  if (scrolling==0) {
        scrolling = 1;
        scrollDown(lastPos, s);
  }
    }
  }
}