今天早些时候,我得到了帮助,让moment.js工作,它正常工作,除了它只能使用一次,或者只显示在一个位置和一个实例中。
代码有效,但我希望每次都可以多次使用不同的日期。
我希望它能够如下工作(不需要是div)
<body>
<div id="inputDiv" style="display: none">2015-02-14 19:07:00</div>
<!-- This is the date which will be "converted" and displayed in #displayMoment -->
<div id="displayMoment"> <!-- 4 day ago --> </div>
<div id="inputDiv" style="display: none">2015-02-15 19:07:00</div>
<div id="displayMoment"> <!-- 3 days ago --></div>
<div id="inputDiv" style="display: none">2015-02-18 19:07:00</div>
<div id="displayMoment"> <!-- 2 hours ago --></div>
</body>
我尝试让脚本向#displayMoment
添加“1”,以便能够使用#displayMoment1
,#displayMoment2
等等...但它不起作用:/
代码有效,但我只能使用#displayMoment
一次,
<div id="inputDiv">2015-02-18 19:07:00</div>
<div id="displayMoment"></div>
// use Moment.js to display current date in a div (#displayMoment)
var inputDiv = document.getElementById('inputDiv');
var eDisplayMoment = document.getElementById('displayMoment');
eDisplayMoment.innerHTML = moment(inputDiv.innerHTML, "YYYY-MM-DD hh:mm:ss").fromNow();
我搜索了它,但我不知道要搜索哪些'关键字':(
提前感谢您的时间
答案 0 :(得分:1)
HTML文件:
<div class="inputDiv">2014-12-20</div>
<div class="displayMoment"></div>
<div class="inputDiv">2015-01-20</div>
<div class="displayMoment"></div>
JS文件:
// use Moment.js to display current date in a div (.displayMoment)
var inputDiv = document.getElementsByClassName('inputDiv');
var eDisplayMoment = document.getElementsByClassName('displayMoment');
for(i=0;i<=inputDiv.length;i++) {
eDisplayMoment[i].innerHTML = moment(inputDiv[i].innerHTML, "YYYY-MM-DD").fromNow();
}
我所做的是通过用类名填充数组来建立数组,如getElementsByClassName()所示。然后我告诉它得到innerHtml检查它返回一个日期然后把它放回到我使用数组inputDiv []获取它的适当位置。