【问题标题】:php/html display automatic week counter starting from a specific dataphp/html 显示从特定数据开始的自动周计数器
【发布时间】:2019-03-20 22:12:08
【问题描述】:

是否有任何编码(php / HTML 或 JS 脚本)来显示周计数器并从特定日期开始这个计数器,比如我想在 2019 年 3 月 25 日星期一开始这个计数器(并且只显示“第 1 周”),那么这个数字每周或每 7 天都会增加(所以在 2019 年 4 月 1 日星期一,它将变为“第 2 周”),直到达到 52 周?任何帮助将不胜感激!!!!谢谢!

【问题讨论】:

    标签: javascript php html counter week-number


    【解决方案1】:

    这可以通过使用 Date 对象的纯 JavaScript 来完成。

    首先初始化一个你想开始计数的新日期

    var startDate=new Date(2019,2,10); // will set the date to the 10th of March
    

    第二次获取实际时间和日期

    var today=new Date();
    

    现在只需像这样获取这两个日期之间的差异:

    var difference=today-startDate;
    

    这将以毫秒为单位返回差异。

    要获得天数的差异,请像这样进行

    var days = difference / 1000 / 60 / 60 / 24;
    

    据此可以得到经过的周数

    var weeks = parseInt(days / 7);
    

    这是一个工作示例:

    var startDate = new Date(2019, 2, 10);
    var today = new Date();
    document.getElementById("stDate").innerHTML = "target: <b>" + startDate.toDateString() + "</b>";
    document.getElementById("cDate").innerHTML = "today: <b>" + today.toDateString() + "</b>";
    
    var difference = today - startDate;
    var days = difference / 1000 / 60 / 60 / 24;
    var weeks = parseInt(days / 7);
    var messaged = "";
    if (weeks < 1) {
      message = "no weeks have passed";
    } else {
      message = "weeks passed: <b>" + weeks + "</b>";
    }
    
    document.getElementById("result").innerHTML = message;
    <div id="stDate"></div><br>
    <div id="cDate"></div><br>
    <div id="result"></div><br>

    【讨论】:

    • 您好,感谢您的回复,您能解释一下这段代码是如何布局的吗?对新的 js 进行排序?
    • 我很乐意提供帮助 - 不幸的是,我不明白您的问题。什么意思?
    • 我想我想要一个从 1 开始的自动计数器,但是如果可以将其计时在特定日期(比如 2019 年 3 月 25 日)开始,我不反对,然后增加一个数字每 7 天 - 因此计数器将在 2019 年 4 月 1 日(7 天后)更改为 2 - 这是否使它更清晰?
    • 在这种情况下,您所要做的就是修改我上面代码中的 startDate 以反映您的目标日期,例如var startDate=new Date(2019,2,25); 顺便说一下,2 表示三月,因为月份从 0 开始。好吧,现在有一个问题 - var weeks = parseInt(days / 7); 将返回一个负数,因为开始日期在未来 - 所以你必须包含一些逻辑来补偿例如if(weeks&lt;1) { // don't do whatever } else { console.log(weeks + " have passed"); }
    • 对不起,我对你给我的东西有点迷茫所以这是正确的: 或者你能在一些预览模式下给我看代码吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-20
    • 1970-01-01
    相关资源
    最近更新 更多