﻿//Скрипт прокрутки страницы


var boxMouseDown=false;
var screenX=0;
var boxX=0;
var scrollbarAreaWidth=614;
var scrollVisibleAreaWidth=670;
//Определение стиля элемента
function getElemStyle(elemId, IEStyleProp, CSSStyleProp)
{
	var elem=document.getElementById('box');
	if(elem.currentStyle)
	{
		return elem.currentStyle[IEStyleProp];
	}else if(window.getComputedStyle)
	{
		var compStyle=window.getComputedStyle(elem,' ');
		return compStyle.getPropertyValue(CSSStyleProp);
	}
	return '';
}
// Функция инициализации событий для скроулинга
function initScroll()
{	
	var elem=document.getElementById('box');
		elem.onmousedown=onBoxMouseDown;
		elem.onmousemove=onBoxMouseMove;
		elem.onmouseup=onBoxMouseUp;		
}	
// Обработка прокрутки бегунка
function onBoxMouseDown(evt)
{	
	var evt=(evt)?evt:event;
	var elem=document.getElementById('box');
	boxMouseDown=true;
	screenX=evt.screenX;
	boxX=parseInt(getElemStyle('box','left','left'));
	if(elem.setCapture) elem.setCapture();
	if(document.addEventListener)
	{
		document.addEventListener('mousemove',onBoxMouseMove,true);
		document.addEventListener('mouseup',onBoxMouseUp,true);
	}
}
function onBoxMouseMove(evt)
{
	if(boxMouseDown)
	{
		var evt=(evt)?evt:event;
		var elem=document.getElementById('box');
		var buf=boxX+evt.screenX-screenX;
		if(buf<0) buf=0;
		if(buf>scrollbarAreaWidth) buf=scrollbarAreaWidth;
		elem.style.left=buf+'px';
		var scrollAreaElem=document.getElementById('scrollArea');
		var scrollCoeff=(scrollAreaElem.offsetWidth-scrollVisibleAreaWidth)/scrollbarAreaWidth;
		scrollAreaElem.style.left=parseInt(scrollCoeff*buf*-1)+'px';		
	}	
}
function onBoxMouseUp()
{
	if(document.addEventListener)
	{
		document.removeEventListener('mousemove',onBoxMouseMove,true);
		document.removeEventListener('mouseup',onBoxMouseUp,true);
	}
	if(document.releaseCapture) document.releaseCapture();
	boxMouseDown=false;
}
