我希望能夠將一個指定的時間添加到JavaScript時鐘並保持更新。我已經設法將下面的東西一起夾在一起。給javascript時鐘添加時間
function leadTimer(leadTime)
{
var d1 = new Date(),
d2 = new Date (d1);
d2.setMinutes (d1.getMinutes() + leadTime);
currentHours = d2.getHours();
currentMins = d2.getMinutes();
// Choose either "AM" or "PM" as appropriate
var timeOfDay = (currentHours < 12) ? "AM" : "PM";
// Convert the hours component to 12-hour format if needed
currentHours = (currentHours > 12) ? currentHours - 12 : currentHours;
// Convert an hours component of "0" to "12"
currentHours = (currentHours == 0) ? 12 : currentHours;
if (currentMins<=9) { currentMins="0"+currentMins; }
if (currentHours<10) { currentHours="0"+currentHours; }
$("#result").empty();
$("#result").html(currentHours + ":" + currentMins + " " + timeOfDay)
setInterval('leadTimer(leadTime)',10000)
}
我盤算了一下,setInterval
只想用的當前值leadTime
但我只是得到一個錯誤說leadTime
是不確定的。
最終,我希望能夠調用這個來保持時鐘滴答下來,這取決於用戶選擇的內容。
maerics有你的修復。當你將一個字符串傳遞給* setInterval *時,它將在全局範圍內被評估,就像'new Function()'一樣,所以* leadTime *是未定義的。通過傳遞一個函數,你可以在本地作用域中定義一個變量,所以當函數被調用時,它們是可用的。 – RobG 2011-06-06 02:01:28