日期:2014-05-17  浏览次数:20618 次

php+js倒计时代码 秒不动
从网上找的这段代码 运行之后 秒 是不动的 为什么?
PHP code

<script type="text/javascript">
function getTheTime(D,i){
     var theDate=new Date(D);
     var date = new Date();
     var diffTime = theDate - date;
     //if(diffTime<=0){
      //document.getElementById("diffDay2"+i) .innerHTML="时间已过.";
      //return;
     //}
     var para = 1000 * 60 * 60 * 24;
     //var diffday = diffTime / para;
     var diffHour = (diffTime % para) / 3600000;
     var diffMinute = (diffTime % 3600000 ) / 60000;
     var diffSecond = (diffTime % 60000) / 1000;
     //document.getElementById("diffDay1"+i).innerHTML = "<b>"+Math.floor(diffday)+ "</b>" + "天 ";
     document.getElementById("diffDay2"+i).innerHTML = Math.floor(diffHour) + "小时" + Math.floor(diffMinute) + "分" + Math.floor(diffSecond) + "秒";
     setTimeout("getTheTime("+D+","+i+")",1000);     
     //document.getElementById("test_date").innerHTML = theDate;
     //document.getElementById("test_date_1").innerHTML = date;
}
</script> 
<?php
include_once '../lib/functions.php';
$db = new Connection();
$connection = $db->connect();

$query="SELECT * FROM PICKUPTIME ORDER BY deadline ASC";
$sql=queryMysql($query);
?>
<?php
$i=0;
while($info=mysql_fetch_array($sql))
{
    $deadline_dinner=$info['deadline'];
    if($info['deadline'] == "") continue;
    //echo $info['deadline'];
    $time_hr=substr($deadline_dinner, 0, 2);
    $time_min=substr($deadline_dinner, 2, 4);
    $pickup_time_formatted=$time_hr.":".$time_min;
    //$c_date=date("Y-m-d");
    $deadline=date("Y-m-d")." "."$pickup_time_formatted";
    $current_time=date("Y-m-d H:i:s");
    if($deadline<$current_time)
        $deadline=date("Y-m-d", strtotime('+1 day'))." "."$pickup_time_formatted";
    //echo "$deadline";

?>
<div id="test_date"></div>

    <div style="float:left;" id="test_date"></div></br>
    <div style="float:left;" id="test_date_1"></div></br>
    
    <div style="float:left;" id="diffDay1<?php echo $i;?>"></div>
    <div style="" id="diffDay2<?php echo $i;?>"></div>
    <script type="text/javascript">
    getTheTime("<?php echo $deadline;?>",<?php echo $i;?>);
    </script> 
<?php
    $i++;
}
?> 




------解决方案--------------------
JScript code
//setTimeout("getTheTime("+D+","+i+")",1000);
setInterval("getTheTime('" + D + "'," + i + ")", 1000);