[Помощь] обратный отсчет

Статус
В этой теме нельзя размещать новые ответы.

core19

Гуру форума
Регистрация
27 Июн 2008
Сообщения
160
Реакции
59
Суть проблемы. Есть в наличии исходник обратного отсчета. Дело в том что все работает кроме отсчета дня. Он стоит на месте. Проходит 24 часа и дата та же. Помогите найти решение проблемы...
(исходник *.fla прилагается)
 

Вложения

  • time.zip
    10,9 KB · Просмотры: 9
Спасибо ребятам з flasher ру ... помогли... вот результат робочий...
:yahoo:
HTML:
myd = new Date();
год = myd.getFullYear();
час = myd.getHours();
мин = myd.getMinutes();
сек = myd.getSeconds();
част = 23 - eval("час");
минт = 59 - eval("мин");
сект = 59 - eval("сек");
var d = new Date(eval("год"), 6, 1);  <!--меняем на свои  ..мес. день-->
var n = new Date();
var деньв = Math.floor((d - n) / 1000 / 60 / 60 / 24);
if (Number(eval("деньв")) > 0)
{
    var d = new Date(eval("год"), 6, 1);   <!--меняем на свои  ..мес. день-->
    var n = new Date();
    var деньт = Math.floor((d - n) / 1000 / 60 / 60 / 24);
}
else
{
    var d = new Date(eval("год") + 1, 6, 1); <!--меняем на свои  ..мес. день-->
    var n = new Date();
    var деньт = Math.floor((d - n) / 1000 / 60 / 60 / 24);
} // end else if
if (Number(eval("деньв")) == -1)
{
    счетчик = "0 дней, часов, минут, секунд - УРА!";
}
else
{
    счетчик = eval("деньт") + " дн.  " + eval("част") + " час.  " + eval("минт") + " мин.  " + eval("сект") + " сек.";
} // end else if
 
Вот другой рабочий вариант. AC2 "обратный отсчет" :ay:
HTML:
var oneBigMovie:MovieClip = this.createEmptyMovieClip('bigMovie', 998);
oneBigMovie._x = oneBigMovie._y=100;
var endtime:TextField = oneBigMovie.createTextField("endtime", 550, 90, 100, 60, 30);
endtime.autoSize = true;
endtime.multiline = true;
//
var info_time:TextField = oneBigMovie.createTextField("info_time", 551, 90, -50, 60, 30);
info_time.autoSize = true;
info_time.multiline = true;
var btn:MovieClip = oneBigMovie.createEmptyMovieClip("btn", 2);
with (btn) {
	beginFill(0xC4C4C4);
	moveTo(10,10);
	lineTo(160,10);
	lineTo(160,40);
	lineTo(10,40);
	endFill();
}
btn._y = 30;
var txt2:TextField = btn.createTextField("txt2", 999, 10, 10, 100, 100);
txt2.text = "Изменить Дату";
//Год
var god:TextField = oneBigMovie.createTextField("god", 3, 10, 10, 60, 30);
god.border = true;
god.type = "input";
god.text = "2014";
//Месяц
var mes:TextField = oneBigMovie.createTextField("mes", 4, 90, 10, 60, 30);
mes.border = true;
mes.type = "input";
mes.text = "1";
//День
var day:TextField = oneBigMovie.createTextField("day", 5, 170, 10, 60, 30);
day.border = true;
day.type = "input";
day.text = "1";
//Часы
var chas:TextField = oneBigMovie.createTextField("chas", 6, 250, 10, 60, 30);
chas.border = true;
chas.type = "input";
chas.text = "1";
//Минуты
var min:TextField = oneBigMovie.createTextField("min", 7, 330, 10, 60, 30);
min.border = true;
min.type = "input";
min.text = "1";
btn.onPress = apply_func;
function apply_func():Void {
	if (mes.length>=1 && day.length>=1 && chas.length>=1 && min.length>=1) {
//То, что вам нужно>>>>>	
	var god = god.text;
		var mes = mes.text;
		var day = day.text;
		var chas = chas.text;
		var min = min.text;
		trace(god);
		var endDate:Date = new Date(god, mes, day, chas, min, 0);
		var endTime:Number = endDate.getTime();
		this.onEnterFrame = function() {
			info_time.text = "";
			var dif:Number = Math.floor((endTime-new Date().getTime())/1000);
			var sec:Number = dif%60;
			var min:Number = Math.floor(dif/60)%60;
			var hou:Number = Math.floor(dif/3600)%24;
			var days:Number = Math.floor(dif/86400);
			endtime.text = ' До Олимпиады в Сочи:\n Осталось дней - '+days+'\n часов - '+hou+'\n минут - '+min+'\n секунд - '+sec;
			if (endDate.getTime()-dif>=endTime) {
				trace("Время Вышло!");
				info_time.text = "Время Вышло!";
				delete this.onEnterFrame;
			}
		}
//<<<<
	} else {
		info_time.text = 'Настройте Дату!';
	}
}
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху