2013-08-13 3 views
-1

Я конвертирую разницу между двумя датами в javascript для дней: Часы: формат Mins.Дата Конверсия в дни, часы, минуты формат

<html> 
    <head> 
<script type="text/javascript" 
src="jquery-1.9.1.min.js""></script> 
<script type="text/javascript"> 

    $(document).ready(function(){ 
     var today = new Date(); 
     var before = new Date(); 
     before.setDate(today.getDate() - 3); 
     var diff = today.getTime() - before.getTime(); 

     var diffMinutes = diff/(60 * 1000) % 60; 
     var diffHours = diff/(60 * 60 * 1000) % 24; 
     var diffDays = diff/(24 * 60 * 60 * 1000); 

     $('#days')[0].innerHTML = diffDays; 
     $('#hours')[0].innerHTML = diffHours; 
     $('#minutes')[0].innerHTML = diffMinutes; 
     setInterval(myfunc,60000);    

     function myfunc(){    
      if(diff > 0){ 
       diff = diff - 60000; 
       diffMinutes = diff/(60 * 1000) % 60; 
       diffHours = diff/(60 * 60 * 1000) % 24; 
       diffDays = diff/(24 * 60 * 60 * 1000); 

       $('#days')[0].innerHTML = Math.floor(diffDays); 
       $('#hours')[0].innerHTML = Math.floor(diffHours); 
       $('#minutes')[0].innerHTML = diffMinutes; 
      } 
     }  
    }); 

</script> 
    </head> 
<body> 
    <div> 
<table> 
    <tr> 
     <td> 
      <label>Days:</label> 
     </td> 
     <td> 
      <label id="days"></label> 
     </td> 
     <td> 
      <label>Hours:</label> 
     </td> 
     <td> 
      <label id="hours"></label> 
     </td> 
     <td> 
      <label>Mintues:</label> 
     </td> 
     <td> 
      <label id="minutes"></label> 
     </td>   
    </tr> 
    </table> 
    </div> 
</body> 

Когда вычисляется разница будет как дни: 2 часа: 4 минуты: 52

Что я хочу есть, если несколько дней или часов в одной цифре, я хочу добавьте 0 перед ними.

Как это достичь? Возможно ли с форматированием регулярных выражений или чисел?

+1

Лучше всего использовать instant.js lib. Не изобретайте велосипед. – zsong

+1

Есть много одинаковых вопросов о SO, пожалуйста, ищите, прежде чем спрашивать. –

ответ

1

Вы должны использовать Moment.js. Ознакомьтесь с разделом Difference. Если по какой-то причине вы не можете использовать библиотеку, вы можете, по крайней мере, использовать их исходный код и получить собственное решение.

Смежные вопросы