javascript - 为什么我的输出没有显示在我的 div 中?

标签 javascript html

我正在测试一些时间格式化系统(例如 Twitter 自在推文旁边发布以来就有一个时间),因此我设置了一个准系统 HTML 页面来运行我的 javascript,但是输出没有显示在我的 div 中。为什么会发生这种情况?如有任何帮助,我们将不胜感激!

页面:

<html>
<head>
  <title>Testing</title>
</head>
<body>
  <div id="app">
    <script>
      var app = require('ago');
      #('app').innerHTML = timeSince(old_date);
    </script>
  </div>
</body>
</html>

脚本:

var old_date = new Date("November 13, 2017 5:00 PM");

function #(sel) {
  return document.getElementById(sel);
}

function timeSince(post_minute) {

  var seconds = Math.floor((new Date() - post_minute) / 1000);
  var interval = Math.floor(seconds / 31536000);

  if (interval > 1) {
        return interval + "y";
    }
    interval = Math.floor(seconds / 2592000);
    if (interval > 1) {
        return interval + "mo.";
    }
    interval = Math.floor(seconds / 86400);
    if (interval > 1) {
        return interval + "d";
    }
    interval = Math.floor(seconds / 3600);
    if (interval > 1) {
        return interval + "h";
    }
    interval = Math.floor(seconds / 60);
    if (interval > 1) {
        return interval + "m";
    }
    return Math.floor(seconds) + " seconds";
}

最佳答案

# 不是 JavaScript 中的有效标识符。阅读 this回答以了解什么是有效标识符。

示例片段:

var old_date = new Date("November 13, 2017 5:00 PM");
$('app').innerHTML = timeSince(old_date);

function $(sel) {
  return document.getElementById(sel);
}

function timeSince(post_minute) {

  var seconds = Math.floor((new Date() - post_minute) / 1000);
  var interval = Math.floor(seconds / 31536000);

  if (interval > 1) {
    return interval + "y";
  }
  interval = Math.floor(seconds / 2592000);
  if (interval > 1) {
    return interval + "mo.";
  }
  interval = Math.floor(seconds / 86400);
  if (interval > 1) {
    return interval + "d";
  }
  interval = Math.floor(seconds / 3600);
  if (interval > 1) {
    return interval + "h";
  }
  interval = Math.floor(seconds / 60);
  if (interval > 1) {
    return interval + "m";
  }
  return Math.floor(seconds) + " seconds";
}
<div id="app">
</div>

关于javascript - 为什么我的输出没有显示在我的 div 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42335951/

相关文章:

javascript - CSS3 Columns 屏蔽特定列

javascript - 是否可以仅通过软件强制浏览器进行 htm5 视频解码?即禁用硬件加速

javascript - 如果启用了自动播放,则无法在加载时暂停 videojs

html - z-index 和汉堡菜单

javascript - 在 FabricJs 中使用 localStorage 对象重绘 Canvas

html & css - 在每个导航菜单项之间使用不同的图像作为分隔符

html - Emacs 从 html 文件跳转到 css 声明

javascript - CoffeeScript:可以重写得更简洁吗?

javascript - Kendo Grid 使用 OData 过滤事件

带有固定标题的 HTML 选择标签?