Перейти к содержанию
Авторизация  
Malith

Помогите Скрипт

Рекомендуемые сообщения

Скачал http://l2maxi.ru/jav...-igorbruma.html

 

поставил таймер идет, но когда страница обновляеться он идет сначала, подскажите в чем проблема?

 

 

// Here’s where the Javascript starts

var countdown = -353754;

var $display = [

['',''], // 0

['',''], // 1

['',''], // 2

['',''] // 3

];

// Converting date difference from seconds to actual time

function convert_to_time(secs)

{

secs = parseInt(secs);

hh = secs / 3600;

hh = parseInt(hh);

mmt = secs - (hh * 3600);

mm = mmt / 60;

mm = parseInt(mm);

ss = mmt - (mm * 60);

 

if (hh > 23)

{

dd = hh / 24;

dd = parseInt(dd);

hh = hh - (dd * 24);

} else { dd = 0; }

 

 

if (ss < 10)

{

$display[3][0].removeClass().addClass('int_0');

$display[3][1].removeClass().addClass('int_'+ss);

} else {

$display[3][0].removeClass().addClass('int_'+ss.toString().substr(0,1));

$display[3][1].removeClass().addClass('int_'+ss.toString().substr(1,1));

}

 

if (mm < 10)

{

$display[2][0].removeClass().addClass('int_0');

$display[2][1].removeClass().addClass('int_'+mm);

} else {

$display[2][0].removeClass().addClass('int_'+mm.toString().substr(0,1));

$display[2][1].removeClass().addClass('int_'+mm.toString().substr(1,1));

}

 

if (hh < 10)

{

$display[1][0].removeClass().addClass('int_0');

$display[1][1].removeClass().addClass('int_'+hh);

} else {

$display[1][0].removeClass().addClass('int_'+hh.toString().substr(0,1));

$display[1][1].removeClass().addClass('int_'+hh.toString().substr(1,1));

}

 

 

if (dd == 0)

{

$display[0][0].removeClass().addClass('int_0');

$display[0][1].removeClass().addClass('int_0');

} else {

if(dd < 10)

{

$display[0][0].removeClass().addClass('int_0');

$display[0][1].removeClass().addClass('int_'+dd);

} else {

$display[0][0].removeClass().addClass('int_'+dd.toString().substr(0,1));

$display[0][1].removeClass().addClass('int_'+dd.toString().substr(1,1));

}

}

}

 

// Our function that will do the actual countdown

function do_cd()

{

if (countdown < 0){}

else {

convert_to_time(countdown);

setTimeout(function(){do_cd();}, 1000);

}

countdown = countdown - 1;

}

$(document).ready(function(){

$display[0][0] = $('#display_0-0');

$display[0][1] = $('#display_0-1');

 

$display[1][0] = $('#display_1-0');

$display[1][1] = $('#display_1-1');

 

$display[2][0] = $('#display_2-0');

$display[2][1] = $('#display_2-1');

 

$display[3][0] = $('#display_3-0');

$display[3][1] = $('#display_3-1');

do_cd();

});

 

Где тут таймер менять?

Изменено пользователем Malith

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

var countdown = -353754;

значение в секундах

1 минута = 60 секунд

1 час = 3600 секунд

1 день - 86400 секунд

- (минус) - обратный отсчет

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Народ помогите, когда обновляю страницу таймер просто заново начинает крутиться. было например 58мин я обновил обратно на 59 59 секунд бросило

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пжлуста помогите, не только спасибку дам, скину на вм счет до 50 рублей.

Изменено пользователем Malith

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В нужном месте, там где мы планируем выводить наш таймер, подключаем скрипт:

 

<SCRIPT language="JavaScript" SRC="countdown.php?timezone=Asia/Yekaterinburg&countto=2015-01-01 12:00:00&do=r&data=http://ololo.com"></SCRIPT>

 

этот countdown.php

 

<?php
// we will be sending Javascript codes, remember...
header('Content-Type: text/javascript');

// select the timezone for your countdown
$timezone = trim($_GET['timezone']);
putenv("TZ=$timezone");

// Counting down to New Year's on 2020
$countdown_to = trim($_GET['countto']); // 24-Hour Format: YYYY-MM-DD HH:MM:SS"

// Getting the current time
$count_from = date("Y-m-d H:i:s"); // current time -- NO NEED TO CHANGE

// Date difference function. Will be using below
function datediff($interval, $datefrom, $dateto, $using_timestamps = false) {
 /*
$interval can be:
yyyy - Number of full years
q - Number of full quarters
m - Number of full months
y - Difference between day numbers
  (eg 1st Jan 2004 is "1", the first day. 2nd Feb 2003 is "33". The datediff is "-32".)
d - Number of full days
w - Number of full weekdays
ww - Number of full weeks
h - Number of full hours
n - Number of full minutes
s - Number of full seconds (default)
 */

 if (!$using_timestamps) {
$datefrom = strtotime($datefrom, 0);
$dateto = strtotime($dateto, 0);
 }
 $difference = $dateto - $datefrom; // Difference in seconds

 switch($interval) {

case 'yyyy': // Number of full years

  $years_difference = floor($difference / 31536000);
  if (mktime(date("H", $datefrom), date("i", $datefrom), date("s", $datefrom), date("n", $datefrom), date("j", $datefrom), date("Y", $datefrom)+$years_difference) > $dateto) {
	$years_difference--;
  }
  if (mktime(date("H", $dateto), date("i", $dateto), date("s", $dateto), date("n", $dateto), date("j", $dateto), date("Y", $dateto)-($years_difference+1)) > $datefrom) {
	$years_difference++;
  }
  $datediff = $years_difference;
  break;

case "q": // Number of full quarters

  $quarters_difference = floor($difference / 8035200);
  while (mktime(date("H", $datefrom), date("i", $datefrom), date("s", $datefrom), date("n", $datefrom)+($quarters_difference*3), date("j", $dateto), date("Y", $datefrom)) < $dateto) {
	$months_difference++;
  }
  $quarters_difference--;
  $datediff = $quarters_difference;
  break;

case "m": // Number of full months

  $months_difference = floor($difference / 2678400);
  while (mktime(date("H", $datefrom), date("i", $datefrom), date("s", $datefrom), date("n", $datefrom)+($months_difference), date("j", $dateto), date("Y", $datefrom)) < $dateto) {
	$months_difference++;
  }
  $months_difference--;
  $datediff = $months_difference;
  break;

case 'y': // Difference between day numbers

  $datediff = date("z", $dateto) - date("z", $datefrom);
  break;

case "d": // Number of full days

  $datediff = floor($difference / 86400);
  break;

case "w": // Number of full weekdays

  $days_difference = floor($difference / 86400);
  $weeks_difference = floor($days_difference / 7); // Complete weeks
  $first_day = date("w", $datefrom);
  $days_remainder = floor($days_difference % 7);
  $odd_days = $first_day + $days_remainder; // Do we have a Saturday or Sunday in the remainder?
  if ($odd_days > 7) { // Sunday
	$days_remainder--;
  }
  if ($odd_days > 6) { // Saturday
	$days_remainder--;
  }
  $datediff = ($weeks_difference * 5) + $days_remainder;
  break;

case "ww": // Number of full weeks

  $datediff = floor($difference / 604800);
  break;

case "h": // Number of full hours

  $datediff = floor($difference / 3600);
  break;

case "n": // Number of full minutes

  $datediff = floor($difference / 60);
  break;

default: // Number of full seconds (default)

  $datediff = $difference;
  break;
 }	

 return $datediff;
}

// getting Date difference in SECONDS
$diff = datediff("s", $count_from, $countdown_to);
?>

// Here’s where the Javascript starts
countdown = <?=$diff?>;

// Converting date difference from seconds to actual time
function convert_to_time(secs)
{
secs = parseInt(secs);
hh = secs / 3600;
hh = parseInt(hh);
mmt = secs - (hh * 3600);
mm = mmt / 60;
mm = parseInt(mm);
ss = mmt - (mm * 60);

if (hh > 23)
{
 dd = hh / 24;
 dd = parseInt(dd);
 hh = hh - (dd * 24);
} else { dd = 0; }

if (ss < 10) { ss = "0"+ss; }
if (mm < 10) { mm = "0"+mm; }
if (hh < 10) { hh = "0"+hh; }
if (dd == 0) { return (hh+":"+mm+":"+ss); }
else {
if (dd > 1) { return (dd+" дней "+hh+":"+mm+":"+ss); }
else { return (dd+" день "+hh+":"+mm+":"+ss); }
}
}

// Our function that will do the actual countdown
function do_cd()
{
if (countdown < 0)
{  
<?php
if(strtolower(trim($_GET['do'])) == 'r' )
{
?>
// redirect web page
document.location.href = "<?=$_GET['data']?>";
<?php } ?>

<?php
if(strtolower(trim($_GET['do'])) == 't' )
{
?>
// change text
document.getElementById('cd').innerHTML = "<?=$_GET['data']?>";
<?php } ?>

}
else
{
document.getElementById('cd').innerHTML = convert_to_time(countdown);
setTimeout('do_cd()', 1000);
}
countdown = countdown - 1;
}

document.write("<div id='cd'></div>\n");

do_cd();

<? exit(); ?>

 

 

В этой же строке проводятся все настройки скрипта через GET - параметры:

timezone = - Ваша временная зона. Моя например Asia/Yekaterinburg (т.е. GMT + 5:00). Правильно написать свою тайм-зону вам поможет эта страница.

countto = - Время Х, т.е. время, когда наступит наше знаменательное событие в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС

Параметр do=t&data может принимать 2 значения:

do=t&data= - Текст, который будет написан вместо таймера по наступлению часа Х

do=r&data= Когда наступит час X, отправим посетителя на какую-нибудь страницу, например : http://rpgvote.ru

 

Ну и, конечно, CSS


#cd {
margin: auto;
height: 50px;
width: 450px;
font-family: "Courier New", Courier, mono;
font-size: 24pt;
color: #000;
text-align: center;
font-weight: bold;
background-image: url(back.jpg);
vertical-align: middle;
}

Изменено пользователем GRIN4

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...