之間計算百分比我使用的插件Moment.js和我有HTML的JavaScript moment.js兩個日期
<div class="record-time pull-right" data-date="2013-09-22 20:16:39"
data-completion-date="2019-08-07 00:00:00">
</div>
,我想計算的時候從數據日期已過ATTR的百分比data-completion-date attr,這些日期在firefox或ie中不起作用,但在Chrome中沒問題。
我可以用得到的日期時間:
moment(new Date(record_time.attr('data-date'))).fromNow()
但同樣它只能在鉻,我缺少什麼嗎? 日期是從MySQL數據庫日期時間字段中提取的。
我在Firefox中得到 '男' 和IE
答:
var record_time = $(this).find('.record-time');
var creation_date = $(this).find('.record-time').data('date');
var completion_date = $(this).find('.record-time').data('completion-date');
// get percentage completed (now - startDate)/(endDate - startDate)
now = moment();
startDate = moment(creation_date);
endDate = moment(completion_date);
var percentage_complete = (now - startDate)/(endDate - startDate) * 100;
var percentage_rounded = (Math.round(percentage_complete * 100)/100);
// percentage rounded to 2 decimal points
// set the progress bar percentages
var record_progress = $(this).find('.bar');
record_progress.css('width', percentage_rounded+'%');
record_progress.html(percentage_rounded+'% - Completed');
作品在Chrome,Firefox和IE
我會建議使用jQuery'數據(「日」)',而不是'ATTR()' –
RECORD_TIME是元素和它會從屬性數據就好了,不知道你的意思 – CaptRisky
'數據('date')'在某些版本的IE中不起作用。 –