Как конвертировать дату в timeago

Я пытаюсь преобразовать поле даты в формате "timeago", используя jquery.timeago.js

$("time.timeago").timeago();

var userSpan = document.createElement("span");
userSpan.setAttribute("class", "text-muted");
userSpan.appendChild(document.createTextNode(message.usernameSender +" | "));
var timeTag = document.createElement("time");
timeTag.setAttribute("class", "timeago");
timeTag.setAttribute("datetime",document.createTextNode(message.date));
userSpan.appendChild(timeTag);

Этот JavaScript будет генерировать следующий код

<span class="text-muted">user1 | <time class="timeago" datetime="[object Text]"></time></span>

Моя проблема в том, что результатом datetime является [текст объекта]

Что мне не хватает?

Спасибо

1 ответ

Решение

Моя проблема в том, что результатом datetime является [текст объекта]

Ну, да, потому что вы говорите JavaScript, чтобы сделать это:

timeTag.setAttribute("datetime",document.createTextNode(message.date));

Пытаться

timeTag.setAttribute("datetime", message.date);

Значения атрибута являются строками, а узлы DOM (включая текстовые узлы) являются объектами.

Другие вопросы по тегам