 var offset;
  var divs = new Array();
  var divSize;
  var anzDiv;
  var windowSize;
  var aktScrollingSpeed = scrollingSpeed;
  var direction;


  function scroll() {
    for (i=0; i<anzDiv; i++) {
      if ((scrollDirection == "left") || (scrollDirection == "right")) {
        this.divs[i].style.left = offset + i * divSize;
      } else {
        this.divs[i].style.top = offset + i * divSize;
      }
    }
    offset = offset + direction * aktScrollingSpeed;
    if (direction == 1) {
      if (offset >= 0)
        offset = offset - divSize;
    } else {
      if (offset <= -divSize)
        offset = offset + divSize;
    }
  }

  function stopScrolling () {
    aktScrollingSpeed = 0;
  }

  function resumeScrolling () {
    aktScrollingSpeed = scrollingSpeed;
  }

  function start() {

    if ((scrollDirection == "left") || (scrollDirection == "up")) {
      direction = -1;
    } else {
      direction = 1;
    }

    if ((scrollDirection == "up") || (scrollDirection == "down")) {
      if (window.innerHeight) {
        windowSize=window.innerHeight;
      } else {
        windowSize=document.getElementsByTagName("body")[0].offsetHeight;
      }
    } else {
      if (window.innerWidth) {
        windowSize=window.innerWidth;
      } else {
        windowSize=document.getElementsByTagName("body")[0].offsetWidth;
      }
    }

    this.divs[0] = document.getElementById("divBereich");
    this.divs[0].style.position="absolute";

    if ((scrollDirection == "up") || (scrollDirection == "down")) {
     this.divs[0].style.width="100%";
      divSize = divs[0].offsetHeight;
    } else {
      this.divs[0].style.height="100%";
      divSize = divs[0].offsetWidth;
    }

    if (scrollDirection == 1) {
      offset = - divSize;
    } else {
      offset = 0;
    }
    if ((scrollDirection == "up") || (scrollDirection == "down")) {
      this.divs[0].style.top = -divSize;
    } else {
      this.divs[0].style.left = -divSize;
    }

    anzDiv = Math.ceil(windowSize / divSize) + 1;

    for (i=1; i<anzDiv; i++) {
      this.divs[i] = document.createElement("div");
      divs[i].innerHTML = divs[0].innerHTML;

      if ((scrollDirection == "up") || (scrollDirection == "down")) {
        this.divs[i].style.top=divSize*(i-1);
        this.divs[i].style.position="absolute";
        this.divs[i].style.width="100%";
      } else {
        this.divs[i].style.left=divSize*(i-1);
        this.divs[i].style.position="absolute";
        this.divs[i].style.height="100%";
      }

      this.divs[i-1].parentNode.appendChild(divs[i]);
    }

    setInterval("scroll()",50);
  }
