1

我正在使用 jQuery Keith-Wood 插件在我的页面上显示一个倒数计时器,它工作正常。

现在我想显示多个倒计时,但它似乎不起作用(它仅适用于第一个元素)。

这是我所做的:

<? foreach ($sales as $sale): ?>
    <script>
        $(function () {
            var austDay = new Date();
            austDay = new Date(<?php echo date('Y', strtotime($sale->end))?>,<?php echo (date('m', strtotime($sale->end))-1)?>,<?php echo date('d-1', strtotime($sale->end))?>,<?php echo date('h', strtotime($sale->end))?>,<?php echo date('i', strtotime($sale->end))?>,<?php echo date('s', strtotime($sale->end))?>);
            $('#defaultCountdown').countdown({until: austDay, format: 'dHMS'});
        });
    </script>

<div id="defaultCountdown"></div>

关于如何使它适用于每个销售数据的任何想法?我的意思是,我怎样才能使它成为多个并工作?

4

1 回答 1

4

您需要唯一标识每个元素。如果有销售 ID,我会这样做:

$('#defaultCountdown<?php echo $sale->Id?>').countdown(...);
...
<div id="defaultCountdown<?php echo $sale->Id?>"></div>

或者只是使用一个计数器:

<?  
    $count = 0;
    foreach ($sales as $sale):
    $count++; 
?>

$('#defaultCountdown<?php echo $count ?>').countdown(...);
...
<div id="defaultCountdown<?php echo $count ?>"></div>
于 2011-05-09T16:00:08.837 回答