在Rails 3应用程序中修复JQuery倒数计时器

时间:2011-05-17 00:38:59

标签: jquery ruby-on-rails-3

我需要一个用于我正在处理的rails应用程序的倒计时器,所以我决定使用它。

http://keith-wood.name/countdown.html

在public / javascripts文件夹中,我添加了jquery.countdown.js 在public / styleheets文件夹中,我添加了jquery.countdown.css

在app / views / layouts / application.html.erb中,我将javascript和css文件添加到样式表和javascript标签中。

在我看来,我添加了

<script>
    var element = '#countDownTimer';
    var year = <%= @deal.end.year %>;
    var month = <%= @deal.end.month %>;
    var day = <%= @deal.end.day %>;
   setCountdownTimer(element, year, month, day);
</script>
<div id="countDownTimer"></div>

将用于通过jQuery选择添加计时器。

这是我的application.js文件

// The following function is called once the rest of the document is fully loaded
 $(document).ready(function()
 {  

function setCountdownTimer(element, year, month, day) {
  var date = new Date(year, month, day);
  $(element).countdown({until: date});
}


// DEALS TABS ON DEALS PAGES
$("#tabs > ul").tabs(); // Make the tabs.

// FANCYBOX FOR GALLERY IMAGES POPUP
$("a.galleryitem").fancybox();

// MEDIA ENCODER FOR PODCASTS
$.mb_audioEmbedder.playerPath="/media/player.swf" //the path to audio player
    $.mb_videoEmbedder.defaults.width=500;
$.mb_audioEmbedder.defaults.width=214;
    $("#media").mb_embedMovies();
    $("#media").mb_embedAudio();

});

有谁能告诉我为什么这不起作用?

1 个答案:

答案 0 :(得分:2)

尝试包装

   var element = '#countDownTimer';
   var year = <%= @deal.end.year %>;
   var month = <%= @deal.end.month %>;
   var day = <%= @deal.end.day %>;
   setCountdownTimer(element, year, month, day);

$(document).ready()

我也不认为这需要在$(document).ready()

function setCountdownTimer(element, year, month, day) {
  var date = new Date(year, month, day);
  $(element).countdown({until: date});
}

问题可能是你在定义

之前调用setCountdownTimer