>백엔드 개발 >PHP 튜토리얼 > php+js 倒计时 几秒之后 不动了解决方法

php+js 倒计时 几秒之后 不动了解决方法

WBOY
WBOY원래의
2016-06-13 13:27:171209검색

php+js 倒计时 几秒之后 不动了
之前弄了一个倒计时代码 有两个问题
1. 刷新之后 倒计时还是挺顺的 但是等个半分钟,倒计时就开始卡 然后就不动了,这是为什么?
2. 卡了之后再点刷新,网页没反应,除非把这个页面关了 重新打开,然后重复第一个问题。。

代码如下:

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<script language="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)+ "" + "天 ";
     document.getElementById("h_diffDay2"+i).innerHTML = Math.floor(diffHour);
     document.getElementById("m_diffDay2"+i).innerHTML = Math.floor(diffMinute);
     document.getElementById("s_diffDay2"+i).innerHTML = Math.floor(diffSecond);
     
     
     setInterval("getTheTime('" + D + "'," + i + ")", 1000); 
}



<table style="width:80%; margin:auto" border="0">
<tr><td class="txt_d_cd" style="color:#d34836">Deadline<td class="txt_d_cd" colspan="3">Countdown For <strong style="color:#d34836">Dinner
<?php
$query="SELECT * FROM PICKUPTIME ORDER BY deadline ASC";
$sql=queryMysql($query);
$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";
        $dinner_notice="TOMORROW";
    }
    else
    {
        $dinner_notice="TODAY";
    }
    //echo "$deadline";

?>
                <tr>
                    <td class="txt_d_cd"><?php echo "$dinner_notice $pickup_time_formatted"; ?>
                    <td class="txt_cd"><strong id="h_diffDay2<?php echo $i;?>">h
                    <td class="txt_cd"><strong id="m_diffDay2<?php echo $i;?>">m
                    <td class="txt_cd"><strong id="s_diffDay2<?php echo $i;?>">s
                
                
                <script type="text/javascript">
                        getTheTime("<?php echo $deadline;?>",<?php echo $i;?>);
                    </script> 
<?php $i++;
}
?> 






------解决方案--------------------
我之前做过类似东西,好像还可以搜索到
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.