
  var isoie      = false;
  var mousex     = 0;
  var screenw    = 0;
  var scrboxw    = 0;
  var innerbw    = 0;
  var xmargin    = 0;

  var scelem     = document.getElementById("mousemovebox");
  var mminnerbox = document.getElementById("mousemoveinnerbox");

  function calcScrollBoxSizes() {

	if (typeof(window.innerWidth) == 'number' )
		screenw = window.innerWidth;

	else if (document.documentElement && document.documentElement.clientWidth)
		screenw = document.documentElement.clientWidth;

	else if (document.body && document.body.clientWidth)
		screenw = document.body.clientWidth;

	innerbw = mminnerbox.offsetWidth;
	scrboxw = scelem.offsetWidth;
  }

  function moveScrollBoxPosition(e) {

	if (isoie) mousex = event.clientX + document.body.scrollLeft;
	else       mousex = e.pageX;

	if (mousex < 0) mousex = 0;

	xmargin = parseInt((screenw - 1024) / 2);
	if (xmargin < 0) xmargin = 0;

	divstart = xmargin  + 190 + 50;
	divend   = divstart + scrboxw - 100;
	if (divend <= divstart) divend = divstart +1;

	scrollpx = innerbw - scrboxw;
	if (scrollpx < 0) scrollpx = 0;

	if (mousex      < divstart) scelem.scrollLeft = 0;
	else if (mousex >   divend) scelem.scrollLeft = scrollpx;
	else {

		dpos = mousex - divstart;
		gesp = divend - divstart;
		if (dpos >= 0 && gesp > 0) scelem.scrollLeft = parseInt((dpos / gesp) * scrollpx);
	}

	return true;
  }

  if (scelem) {

    calcScrollBoxSizes();
    window.onresize = calcScrollBoxSizes;

    if (document.addEventListener) {

	document.addEventListener("mousemove", moveScrollBoxPosition, false);

    } else {

	isoie = true;
	document.body.onmousemove = moveScrollBoxPosition;
    }
  }
