【问题标题】:Creating a dynamic javascript countdown timer创建一个动态的javascript倒数计时器
【发布时间】:2011-04-11 14:52:37
【问题描述】:

我正在寻找创建一个动态 javascript 倒数计时器,我想从我的 SQL 服务器数据库中传递一个 datetime 变量并让它倒计时到这个日期然后显示一条消息,我几乎尝试了所有的 JQuery 插件可以找到并且还没有能够编辑它们来做我需要的事情,我还需要能够在同一页面上有多个倒数计时器,

任何帮助将不胜感激

干杯

斯科特

=======编辑=======

经过多次试验和错误,我能够修改这个 js http://andrewu.co.uk/clj/countdown/pro/

做我需要的事情

【问题讨论】:

  • 如果你想让别人为你写这个,你将不得不提供更详细的要求并建立一个付款方案。如果您对尝试过的方法之一有疑问,您可能应该发布有问题的代码。
  • 是的,那将是一个更好的方法,我在下班时写了这个,从好的方面来说,经过多次试验和错误,我设法修改了这个 andrewu.co.uk/clj/countdown/pro 来做我需要的
  • 您能以对他人有所帮助的方式回答您自己的问题吗?如果你这样做,你可以选择你的作为正确答案。这可能看起来很奇怪,但它是处理此类情况的首选方式。

标签: javascript jquery webmatrix


【解决方案1】:

试试这个:

function Thick(startin) {
  startin--;
  document.getElementById('timer').innerHTML = startin;
  if(startin > 0) setTimeout('Thick(' + startin + ')', 1000);
}

在正文中调用 onLoad 函数,如:

<body onLoad="Thick(20);">

希望得到帮助:)

【讨论】:

    【解决方案2】:
    //TODAY'S DATE
    $today = time();
    //FETCHES DATE AND TIME FOR THE EVENT FROM DATABASE
    
    $sql = "SELECT * FROM post";
    $result = mysqli_query($conn, $sql);
    if (mysqli_num_rows($result) > 0) {
    $Row = (mysqli_fetch_assoc($result));
    $th = $Row['endtime'];    
    }
    echo $th
    
    first of all put it into a variable then use your javascript to call the variable
    
    //let get todays date here
    var today = new Date();
    var DD = today.getDate();
    var MM = today.getMonth()+1; //January is 0!
    var YYYY = today.getFullYear();
    //let get the Difference in Sec btw the two dates
    var _DateFromDBProgEndDate = '<?php echo $th; ?>';
    var ProgEndTime = new Date(_DateFromDBProgEndDate);
    var TodayTime = new Date();
    
    var differenceTravel = ProgEndTime.getTime()- TodayTime.getTime() ;
    var seconds = Math.floor((differenceTravel) / (1000));
    ////////////////////////////////
    var SecDiffFromToday = seconds;
    var seconds = SecDiffFromToday;
    function timer() {
        var days        = Math.floor(seconds/24/60/60);
        var hoursLeft   = Math.floor((seconds) - (days*86400));
        var hours       = Math.floor(hoursLeft/3600);
        var minutesLeft = Math.floor((hoursLeft) - (hours*3600));
        var minutes     = Math.floor(minutesLeft/60);
        var remainingSeconds = seconds % 60;
        if (remainingSeconds < 10) {
            remainingSeconds = "0" + remainingSeconds; 
        }
        document.getElementById('countdown').innerHTML = days + ":" + hours + ":" + minutes + ":" + remainingSeconds;
        if (seconds == 0) {
            clearInterval(countdownTimer);
            document.getElementById('countdown').innerHTML = "Completed";
        } else {
            seconds--;
        }
    }
    var countdownTimer = setInterval('timer()', 1000);
    </script>
    
    
    the  javascript call in the variable with  '<?php echo $th; ?>'; then the javascript does the count down with out refreshing the page
    

    【讨论】:

      猜你喜欢
      • 2011-02-06
      • 1970-01-01
      • 1970-01-01
      • 2023-03-04
      • 1970-01-01
      • 2019-07-10
      • 2012-01-17
      • 1970-01-01
      相关资源
      最近更新 更多