  function initMoving(target, position, topLimit, btmLimit) {
   if (!target)
    return false;

   var obj = target;
   obj.initTop = position;
   obj.topLimit = topLimit;
   obj.bottomLimit = document.documentElement.scrollHeight - btmLimit;

   obj.style.position = "";
   obj.top = obj.initTop;
   obj.left = obj.initLeft;

   if (typeof(window.pageYOffset) == "number") {
    obj.getTop = function() {
     return window.pageYOffset;
    }
   } else if (typeof(document.documentElement.scrollTop) == "number") {
    obj.getTop = function() {
     return document.documentElement.scrollTop;
    }
   } else {
    obj.getTop = function() {
     return 0;
    }
   }

   if (self.innerHeight) {
    obj.getHeight = function() {
     return self.innerHeight;
    }
   } else if(document.documentElement.clientHeight) {
    obj.getHeight = function() {
     return document.documentElement.clientHeight;
    }
   } else {
    obj.getHeight = function() {
     return 300;
    }
   }

   obj.move = setInterval(function() {
    if (obj.initTop > 0) {
     pos = obj.getTop() + obj.initTop;
    } else {
     pos = obj.getTop() + obj.getHeight() + obj.initTop;
     //pos = obj.getTop() + obj.getHeight() / 2 - 15;
    }

    if (pos > obj.bottomLimit)
     pos = obj.bottomLimit;
    if (pos < obj.topLimit)
     pos = obj.topLimit;

    interval = obj.top - pos;
    obj.top = obj.top - interval / 10;
    obj.style.top = obj.top + "px";
   }, 30)
  }
