2015-07-10 1 views
1

Это код, ребята ... позвольте мне что-то не так ... где и как следует добавить дату окончания цели или обратного отсчета.Счетчик сценариев Java не работает

/** 
* downCount: Simple Countdown clock with offset 
* Author: Sonny T. <[email protected]>, sonnyt.com 
*/ 

(function ($) { 

    $.fn.downCount = function (options, callback) { 
     var settings = $.extend({ 
       date: null, 
       offset: null 
      }, options); 

     // Throw error if date is not set 
     if (!settings.date) { 
      $.error('Date is not defined.'); 
     } 

     // Throw error if date is set incorectly 
     if (!Date.parse(settings.date)) { 
      $.error('Incorrect date format, it should look like this, 12/24/2012 12:00:00.'); 
     } 

     // Save container 
     var container = this; 

     /** 
     * Change client's local date to match offset timezone 
     * @return {Object} Fixed Date object. 
     */ 
     var currentDate = function() { 
      // get client's current date 
      var date = new Date(); 

      // turn date to utc 
      var utc = date.getTime() + (date.getTimezoneOffset() * 60000); 

      // set new Date object 
      var new_date = new Date(utc + (3600000*settings.offset)) 

      return new_date; 
     }; 

     /** 
     * Main downCount function that calculates everything 
     */ 
     function countdown() { 
      var target_date = new Date(settings.date), // set target date 
       current_date = currentDate(); // get fixed current date 

      // difference of dates 
      var difference = target_date - current_date; 

      // if difference is negative than it's pass the target date 
      if (difference < 0) { 
       // stop timer 
       clearInterval(interval); 

       if (callback && typeof callback === 'function') callback(); 

       return; 
      } 

      // basic math variables 
      var _second = 1000, 
       _minute = _second * 60, 
       _hour = _minute * 60, 
       _day = _hour * 24; 

      // calculate dates 
      var days = Math.floor(difference/_day), 
       hours = Math.floor((difference % _day)/_hour), 
       minutes = Math.floor((difference % _hour)/_minute), 
       seconds = Math.floor((difference % _minute)/_second); 

       // fix dates so that it will show two digets 
       days = (String(days).length >= 2) ? days : '0' + days; 
       hours = (String(hours).length >= 2) ? hours : '0' + hours; 
       minutes = (String(minutes).length >= 2) ? minutes : '0' + minutes; 
       seconds = (String(seconds).length >= 2) ? seconds : '0' + seconds; 

      // based on the date change the refrence wording 
      var ref_days = (days === 1) ? 'day' : 'days', 
       ref_hours = (hours === 1) ? 'hour' : 'hours', 
       ref_minutes = (minutes === 1) ? 'minute' : 'minutes', 
       ref_seconds = (seconds === 1) ? 'second' : 'seconds'; 

      // set to DOM 
      container.find('.days').text(days); 
      container.find('.hours').text(hours); 
      container.find('.minutes').text(minutes); 
      container.find('.seconds').text(seconds); 

      container.find('.days_ref').text(ref_days); 
      container.find('.hours_ref').text(ref_hours); 
      container.find('.minutes_ref').text(ref_minutes); 
      container.find('.seconds_ref').text(ref_seconds); 
     }; 

     // start 
     var interval = setInterval(countdown, 1000); 
    }; 

})(jQuery); 
+0

Эти изменения не заставляют его работать ... –

+2

Hi Anjali - * edit * by @SHAZ был так, что весь код вписывается в окно кода, не было никаких изменений. –

+0

Как я вижу, это не ваш собственный разработанный код, возможно, попробуйте это: http://fengyuanchen.github.io/countdown/ имеет хорошую оценку – brandelizer

ответ

0

Код фактически работает. Вы должны добавить скрипт для его вызова. Это плагин для обратного отсчета, код для него должен быть:

$('.countdown').downCount({ 
    date: '12/02/2015 19:00:00', 
    offset: +1 
}, function() { 
    alert('WOOT WOOT, done!'); 
}); 

Дата, очевидно, дата и время вы хотите, обратный отсчет до конца и смещения является UTC смещения. Все об этом можно найти here.

Кроме того, ему нужен jQuery.