2013-03-12 106 views
0

嗨每個人我很抱歉,如果這個問題已被回答之前,但我一直沒能找到解決方案。我對js是全新的,所以請好起來:)顯示時間上午/下午與javascript div

我想問我怎麼能在div裏面顯示時間?我無法讓這個功能顯示在我的頁面上。當我在瀏覽器中啓動頁面時,它只是空白。

謝謝,我希望我的問題有道理。

document.getElementById("para1").innerHTML = formatAMPM(date); 

function formatAMPM(date) { 
    var elem = document.getElementById("para1"); 
    var hours = date.getHours(); 
    var minutes = date.getMinutes(); 
    var ampm = hours >= 12 ? 'pm' : 'am'; 
    hours = hours % 12; 
    hours = hours ? hours : 12; // the hour '0' should be '12' 
    minutes = minutes < 10 ? '0'+minutes : minutes; 
    var strTime = hours + ':' + minutes + ' ' + ampm; 
    return strTime; 
} 

回答

3

你需要這樣的:

document.getElementById("para1").innerHTML = formatAMPM(new Date()); 

而且你可能也想包裝在像jQuery的ready()以確保DOM已經被加載:

$(document).ready(function() { 
    // Handler for .ready() called. 
}); 

http://api.jquery.com/ready/

jQuery's不是唯一的方法,但只是一個建議。

+0

如果你正在使用jQuery的都是'。就緒( )', 'window.onload = function(){};'是一個跨瀏覽器兼容的非jQuery方法。 – 2013-03-12 23:47:00

+0

@EdgarAllanPwn,你提出一個有效的觀點。如果'.ready()'是所有人都打算使用它,我會100%同意jQuery增加了很多頁面權重。 – Marc 2013-03-12 23:50:04

1
document.getElementById("para1").innerHTML = formatAMPM(); 

function formatAMPM() { 
var date = new Date(); 
var hours = date.getHours(); 
var minutes = date.getMinutes(); 
var ampm = hours >= 12 ? 'pm' : 'am'; 
hours = hours % 12; 
hours = hours || 12; 
minutes = minutes < 10 ? '0'+minutes : minutes; 
var strTime = hours + ':' + minutes + ' ' + ampm; 
return strTime; 
} 

DEMO VIEW

+0

考慮:'小時=小時|| 12;'或'小時=小時%12 || 12;' – RobG 2013-03-13 00:21:34

1

您可以在用戶熟悉的時間字符串toLocaleTimeString返回它()。

一個替換將刪除秒反

function formatAMPM() { 
    var d=new Date().toLocaleTimeString(); 
    return d.replace(/^(\d{2}:\d{2}):\d{2}(.*)/, '$1$2'); 
} 

或者你可以撥打這個還是你的方法對timer-

onload= function(){ 
    window.showTimer= setInterval(function(){ 
     var date= new Date(), 
     hours= date.getHours(), 
     time= date.getMinutes(); 
     if(time<10) time= '0'+time; 
     document.getElementById("para1").innerHTML= 
     (hours%12 || 12)+':'+time+(hours>= 12? ' pm':' am'); 
    },1000); 
} 
相關問題