Показать сообщение отдельно
  #7 (permalink)  
Старый 05.11.2009, 16:02
Новичок на форуме
Отправить личное сообщение для djdish Посмотреть профиль Найти все сообщения от djdish
 
Регистрация: 05.11.2009
Сообщений: 3

function StartCountDown()
{
	myDiv = 'timer1';
                myTargetDate = '2009/11/05 20:00:00'
                var dthen = new Date(myTargetDate);
	var dnow = new Date();
	ddiff = new Date(dthen-dnow);
	gsecs = Math.floor(ddiff.valueOf()/1000);
	CountBack(myDiv,gsecs);
}
function Calcage(secs, num1, num2)
{
	s = ((Math.floor(secs/num1))%num2).toString();
	if (s.length < 2)
	{
	s = "0" + s;
	}
return (s);
}
function CountBack(myDiv, secs)
{
	var parsediv = myDiv;
	var thistr   = 'div#' + myDiv.replace('timer','cost') + ' > h2';
	var thisin   = 'div#' + myDiv.replace('timer','bet');
	var plusrub = $(thistr).text();
	var costvalue   = plusrub.replace(' р.','');
	var DisplayStr = '';
	var DisplayFormat = "%%H%% : %%M%% : %%S%%";
	DisplayStr = DisplayFormat.replace(/%%H%%/g, Calcage(secs,3600,24));
	DisplayStr = DisplayStr.replace(/%%M%%/g, Calcage(secs,60,60));
	DisplayStr = DisplayStr.replace(/%%S%%/g, Calcage(secs,1,60));
	if(secs > 0)
	{
		document.getElementById(myDiv).innerHTML = DisplayStr;
		timeout_id = setTimeout("CountBack('" + myDiv + "'," + (secs-1) + ");", 1000);
		$.post('pscript/timers2session.php',{DivName : myDiv, DivTimer : timeout_id, DivCost : costvalue, Operation : 'save'});		
	}
	else
	{
		$(thisin).text('');
		document.getElementById(myDiv).innerHTML = "Лот разыгран";
	}
}
function IncrTime(DivId){
	var thisdiv  = 'div#' + DivId;
	var parsediv = thisdiv;
	var thistr   = 'div#' + DivId.replace('timer','cost') + ' > h2';
	var plusrub = $(thistr).text();
	var minus   = plusrub.replace(' р.','');
	var thisid   = 'div#' + DivId.replace('timer','lot') + ' > h1';
	var plusnid = $(thisid).text();
	var minusid   = plusnid.replace('№ ','');
	var costvalue = eval(minus) + 40 + ' р.';
	var timevalue   = $(thisdiv).text();
	var countsec = timevalue.split(':');
	var hour     = eval(countsec[0]);
	var mins     = eval(countsec[1]);
	var secs     = eval(countsec[2]);
	var newsecs  = hour*3600 + mins*60 + secs + 120;
	$(thistr).text(costvalue);
	Send_Timer();
	$.post('pscript/timers2session.php',{DivName : DivId, DivCost : minus, GoodID : minusid, Operation : 'change'},function(data){
	clearTimeout(data);
	});
	CountBack(DivId,newsecs);		
}

<div id='timer1'></div>
<div id='cost1'>100 р.</div>
<input type='button' value='Увеличить' onClick="IncrTime('timer1')";
<script language='javascript'>StartCountDown();</script>

вот собственно код таймера! иногда таймер не изменяется полностью, то есть через секунду старое значение и новое!

HELP!!!!!!
И как отправить всем клиентам некое изменение без перезагрузки страницы?
Ответить с цитированием