[英]Display Time in 12 Hour Format in JavaScript
我想通過更改以下代碼以12小時格式顯示時間。 我嘗試了各種技術,但沒有運氣,希望找到你們的解決方案。
<script type="text/javascript">
$.fn.androClock = function() {
var days = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];
var months = ["Jan", "Feb", "Mar", "Apr", "May", "June", "July", "Aug", "Sep", "Oct", "Nov", "Dec"];
function getTime() {
var date = new Date(),
hour = date.getHours();
return {
day: days[date.getDay()],
date: date.getDate(),
month: months[date.getMonth()],
hour: appendZero(hour),
minute: appendZero(date.getMinutes())
};
}
function appendZero(num) {
if (num < 10) {
return "0" + num;
}
return num;
}
function refreshClock() {
var now = getTime();
$('#date').html(now.day + "<br>" + now.date + '. ' + now.month);
$('#time').html(now.hour + ":" + now.minute);
setTimeout(function() {
refreshClock();
}, 10000);
}
refreshClock();
};
$('#andro-clock').androClock();
</script>
編輯
根據您在rahul的回答中的評論......
更新行:
hour: appendZero(hour),
至
hour: appendZero(((hour + 11) % 12) + 1)
現場演示
var formatTime = (function () {
function addZero(num) {
return (num >= 0 && num < 10) ? "0" + num : num + "";
}
return function (dt) {
var formatted = '';
if (dt) {
var hours24 = dt.getHours();
var hours = ((hours24 + 11) % 12) + 1;
formatted = [formatted, [addZero(hours), addZero(dt.getMinutes())].join(":"), hours24 > 11 ? "pm" : "am"].join(" ");
}
return formatted;
}
})();
alert(formatTime(new Date()));
function getTime() {
var date = new Date(),
hour = date.getHours();
// var dd = "AM";
var h = hour;
if (h > 12) {
h = hour-12;
// dd = "PM";
}
if (h == 0) {
h = 12;
}
return {
day: days[date.getDay()],
date: date.getDate(),
month: months[date.getMonth()],
hour: appendZero(h),
minute: appendZero(date.getMinutes()),
// dd: dd
};
}
function refreshClock() {
var now = getTime();
$('#date').html(now.day + "<br>" + now.date + '. ' + now.month);
// $('#time').html(now.hour + ":" + now.minute+" "+now.dd);
$('#time').html(now.hour + ":" + now.minute);
setTimeout(function() {
refreshClock();
}, 10000);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.