다양한 시간표현을 해주는 js 라이브러리
Moment.JS
http://momentjs.com/
사이트 소개겸 팁 입니다. 이 라이브러리는 글 작성 시간, 댓글 작성 시간 등에 다양한 API 통하여 각종 시간을 표현해 줍니다. 예를 들어 트위터나 페이스 북 처럼 현재 등록시간을 서버시간에 관계없이 세계 각국의 사용자 시간에 맞춰서 an hour ago 같이 표현해주는게 가능합니다.
HTML소스
<load target="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/moment.min.js" />
<load target="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/locale/ko.js" />
<time datetime="{$oDocument->getRegdate('Y-m-d H:i:s')}">{$oDocument->getRegdate('Y-m-d H:i:s')}</time>
<load target="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/moment.min.js" />
<load target="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/locale/ko.js" />
<time datetime="{$oDocument->getRegdate('Y-m-d H:i:s')}">{$oDocument->getRegdate('Y-m-d H:i:s')}</time>
javascript소스
var diff = moment().format('HH') - moment().utc().utcOffset(9).format('HH');
var diff = Number(moment().format('ZZ').replace(/[0]/g,'') - moment().utcOffset(9).format('ZZ').replace(/[0]/g,'')); // UTC +0900(한국시간)과 각국의 UTC 차액을 구함
$("time").each(function(i, time){
var datetime = $(time).attr('datetime');
$(time).html(moment(datetime).add(diff, 'h').fromNow());
});
// 1분 마다 갱신할 경우
window.clock = setInterval(function(){
$("time").each(function(i, time){
var datetime = $(time).attr('datetime');
$(time).html(moment(datetime).add(diff, 'h').fromNow());
});
}, 60000);
$(window).on("beforeunload", function () {
clearInterval(window.clock);
});
var diff = Number(moment().format('ZZ').replace(/[0]/g,'') - moment().utcOffset(9).format('ZZ').replace(/[0]/g,'')); // UTC +0900(한국시간)과 각국의 UTC 차액을 구함
$("time").each(function(i, time){
var datetime = $(time).attr('datetime');
$(time).html(moment(datetime).add(diff, 'h').fromNow());
});
// 1분 마다 갱신할 경우
window.clock = setInterval(function(){
$("time").each(function(i, time){
var datetime = $(time).attr('datetime');
$(time).html(moment(datetime).add(diff, 'h').fromNow());
});
}, 60000);
$(window).on("beforeunload", function () {
clearInterval(window.clock);
});
댓글 0