【问题标题】:Show Date.getTime() javascript into html将 Date.getTime() javascript 显示为 html
【发布时间】:2020-07-31 13:58:36
【问题描述】:

我正在尝试在我的网站上使用 html 和 javascript 制作秒表。 这是我尝试过的:

<!DOCTYPE HTML>
<html>
  <script>
    Date.setTime(0);
  </script>
  <body>
    <p>Time: <script>document.write(Date.getTime());</script></p>
  </body>
</html>

我希望它显示自加载以来的毫秒数。我在 KhanAcademy 上做。有人知道怎么做吗?

另外,有点奇怪的是,没有错误

【问题讨论】:

  • 你需要创建一个日期,将它存储在一个var中,更新这个var
  • 我会试试的!
  • 所以:let date = new Date(); date.setTime(0); 现在效果会更好
  • 奇怪!它给了我Time: undefined

标签: javascript html time unix-timestamp


【解决方案1】:

如果你想显示页面加载后的毫秒数,你需要使用 setInterval() 更新它

<!DOCTYPE HTML>
<html>
  
  <body>
    <p>Time: <span id="msec"></span> </p>
  </body>
  
  
  <script>

    var msec = 0;
    
    msec = setInterval(function(){
        msec = msec + 1;
        
        document.getElementById("msec").innerText = msec;
    },1)

  </script>
</html>

【讨论】:

    【解决方案2】:

    你可能有意这样做

    注意脚本标签必须在跨度之后 - 它需要存在。

    let d = new Date();
    d.setTime(1000)
    const span = document.getElementById("time");
    const tId = setInterval(function() {
      if (d.getTime() <= 0) clearInterval(tId);
      span.textContent = d.getTime();
      d.setTime(d.getTime() - 10)
    }, 10); 
    &lt;span id="time"&gt;&lt;/span&gt;

    但这和这样做是一样的

    let d = 1000;
    
    const span = document.getElementById("time");
    const tId = setInterval(function() {
      span.textContent = d-=10
      if (d <= 0) clearInterval(tId);
    }, 10)
    &lt;span id="time"&gt;&lt;/span&gt;

    使用窗口加载事件使脚本可以停留在头部

    我在这里数数

    window.addEventListener("load", function() { // on page load
      let d = 0;
    
      const span = document.getElementById("time");
      const tId = setInterval(function() {
        span.textContent = d += 10
        if (d >= 1000) clearInterval(tId);
      }, 10);
      
    });
    &lt;span id="time"&gt;&lt;/span&gt;

    【讨论】:

    • 它不工作...(也许这是我在 HTML 5 上的事实)
    • 没有。代码需要在 span 下或在页面加载事件中
    【解决方案3】:

    您必须设置一个间隔来更新计算自启动网站以来的持续时间(我选择 1 毫秒)。脚本必须在 声明 HTML 元素之后写在代码中。

    var start = performance.now();
    
    setInterval(function() {
        let time = performance.now();
      document.getElementById('duration').innerHTML = 'Dauer: ' + (time - start) + ' ms.';
    }, 1);
     &lt;div id='duration'&gt;&lt;/div&gt;

    【讨论】:

      猜你喜欢
      • 2011-12-29
      • 1970-01-01
      • 1970-01-01
      • 2014-09-09
      • 1970-01-01
      • 1970-01-01
      • 2016-05-08
      • 2019-10-07
      • 2023-03-07
      相关资源
      最近更新 更多