2015-10-03 2 views
-1

Я пытаюсь привести переменную php в свой код javascript, который будет использоваться для таймера обратного отсчета. Из-за других функций, происходящих на основе переменной php timestamp, мне также нужно быть в php.Пытается использовать переменную PHP в Javascript

<?php $access = '1443907640'; ?> 
<script> 
    $(function() { 
     var access = <?php echo $access ?>; 
     var note = $('.note'), 

     ts = (new Date(access * 1000)).getTime() + 1 * 24 * 60 * 60 * 1000; 


     $('.countdown').countdown({ 
     timestamp: ts, 
     callback: function(days, hours, minutes, seconds) { 

      var message = ""; 

      message += days + "<small class='opacity'>D</small>, "; 
      message += hours + "<small class='opacity'>H</small>, "; 
      message += minutes + "<small class='opacity'>M</small>, "; 
      message += seconds + "<small class='opacity'>S</small>"; 

      note.html(message); 

     } 


     }); 
    }); 
</script> 

Тогда я вызываю называть его с HTML здесь, но не работает

<div class="note"></div> 
+0

Какие ошибки вы видите в консоли js? – Steve

+0

Поскольку вы используете JQuery, вы вызываете его из '$ (document) .ready()'? –

+0

Не вижу ошибок в консоли. Я в основном парень php, не очень хорошо с js и jquery. Я просто пытаюсь использовать его, поэтому таймер обратного отсчета отсчитывается вторым и не статичен. –

ответ

1

Я думаю, что реальная проблема в вашем коде в конце этой линии:

var note = $('.note'), 

Заменить , на ; и он должен работать.

ПРИМЕЧАНИЕ: линия var access = <?php echo $access ?>; работает нормально в моем тесте.


Чтобы решить следующую ошибку:

TypeError: $(...).countdown is not a function 

Вы должны добавить jquery.countdown скрипт:

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.countdown/2.1.0/jquery.countdown.js"></script> 

Надеется, что это помогает.

+0

Действительно?Я пробовал это, и я получаю 'TypeError: $ (...). Countdown не является функцией' –

+0

Вы можете видеть, что я говорю о строке, а не ко всему коде ... для решения предыдущей ошибки см. Мой обновленный ответ. –

+0

Итак, сделайте это, чтобы ошибка исчезла, но все еще пуста. Http://massblogprofits.com/get-launched/test.php –

0

Может быть, считают, чтобы положить точку с запятой после PHP-эхо.

<?php echo $access; ?>

или короткие и грязные версии:

<?=$access?>

в строке 4:

var access = <?=$access?>; 

или

var access = '<?=$access?>'; //if $access would be typeof string 
+0

4-я строка в его коде, не так ли? –

+0

У меня это как var access = ""; –

+0

да! И вы обычно можете опустить «php» после этих Nibbels

Смежные вопросы