// плавное изменение размера
function effResize(id,newWidth,newHeight,beginFunc,endFunc,step,frequency){
	if(!step) step=20; // шаг
	if(!frequency) frequency=20; // частота
	var e=document.getElementById(id);
	var w=(parseInt(e.style.width)?parseInt(e.style.width):parseInt(e.offsetWidth));
	var h=(parseInt(e.style.height)?parseInt(e.style.height):parseInt(e.offsetHeight));
	var more=false; // нужно ли еще изменять размер
	// функция перед изменением размеров
	if(beginFunc) beginFunc();
	// новая ширина
	if((newWidth-w)>step){ w=w+step; more=true; }
	else if((newWidth-w)<-step){ w=w-step; more=true; }
	else{ w=newWidth; }
	// новая высота
	if((newHeight-h)>step){ h=h+step; more=true; }
	else if((newHeight-h)<-step){ h=h-step; more=true; }
	else{ h=newHeight; }
	// установка новых размеров
	e.style.width=w+'px';
	e.style.height=h+'px';
	// если надо еще, то ставим таймер
	if(more) setTimeout(function(){ effResize(id,newWidth,newHeight,null,endFunc); },frequency);
	// функция после изменеия размеров
	else if(endFunc) endFunc();
}
