世界中のさまざまなタイム ゾーンの時刻を表示するために作成したカスタム スクリプトに問題があります。分が 10 未満の場合は、HH:MM ではなく、HH:M と表示されます。10 未満の場合に HH:0M になるように変更するにはどうすればよいですか?
スクリーンショット:
脚本:
$(document).ready(function() {
function calculateTime(offset) {
var currentDate = new Date()
utc = currentDate.getTime() + (currentDate.getTimezoneOffset() * 60000);
newDate = new Date(utc + (3600000*offset));
return (newDate.getHours() === 0) ? 12 : ((newDate.getHours() > 12) ? newDate.getHours() - 12 : newDate.getHours()) + ' : ' + newDate.getMinutes() + ' ' + ((newDate.getHours() > 11) ? 'PM' : 'AM');
}
function displayTimes() {
$(".chicago").html(calculateTime("-6"));
$(".london").html(calculateTime("+1"));
$(".shanghai").html(calculateTime("+8"));
};
displayTimes();
window.setInterval(displayTimes, 5000);
});
HTML:
<table>
<tr>
<td><strong>Chicago</strong></td>
<td align="right" class="time chicago">12:00PM</td>
</tr>
<tr>
<td><strong>London</strong></td>
<td align="right" class="time london">12:00PM</td>
</tr>
<tr class="last">
<td><strong>Shanghai</strong></td>
<td align="right" class="time shanghai">12:00PM</td>
</tr>
</table>