好爲我想你必須保持簡潔的問題,但 已經downvoted爲缺乏研究增加一些額外的細節。這個腳本大約是第三個或第四個 ,我試圖做我想做的事,並在各種瀏覽器上工作。當它做 不工作時,我搜索資源來幫助,並認爲它可能是輸出倒計數的方式,因爲IE不喜歡輸入ID,所以嘗試了其他方式來顯示它,但無法讓它工作這個問題。沒有錯誤顯示一個IE它只是不顯示任何東西 - 因此它只是對輸入ID的猜測。
我發現這段JavaScript代碼 - 甚至在這裏下車,它不正是我想要 ,並顯示了在FF & Chrome的罰款。不幸的是,雖然它並沒有在IE中顯示倒計時 ,並且想知道是否有任何方法改變倒計時的方式,即可以與IE兼容的 輸出。
下面是我使用的代碼:
<script type="text/javascript">
// set minutes
var mins = 5;
// calculate the seconds (don't change this! unless time progresses at a different speed for you...)
var secs = mins * 60;
function countdown() {
setTimeout('Decrement()',1000);
}
function Decrement() {
if (document.getElementById) {
minutes = document.getElementById("minutes");
seconds = document.getElementById("seconds");
// if less than a minute remaining
if (seconds < 59) {
seconds.value = secs;
} else {
minutes.value = getminutes();
seconds.value = getseconds();
}
secs--;
setTimeout('Decrement()',1000);
}
}
function getminutes() {
// minutes is seconds divided by 60, rounded down
mins = Math.floor(secs/60);
return mins;
}
function getseconds() {
// take mins remaining (as seconds) away from total seconds remaining
return secs-Math.round(mins *60);
}
</script>
而像這樣顯示的:
<div id="timer">
Time Ending In: <input id="minutes" type="text"> minutes and <input id="seconds" type="text"> seconds.
</div>
<script>
countdown();
</script>
正如我說在FF &鉻細上面顯示 - 有沒有什麼辦法讓它在IE中工作?
在此先感謝。
爲什麼我downvoted這個問題:http://meta.stackexchange.com/a/149138/133242 – 2013-04-07 02:05:28
對不起 - 我是否做錯了什麼事? – onelove 2013-04-07 02:18:14
那麼你正在向'setTimeout'傳遞字符串,並期望JavaScript是實時的(儘管它不是 - 幾乎,但不是很完美)。你也會在所有地方拋出一個全局變量,而不是使用參數或範圍......它看起來並不像你甚至試圖對你正在使用的代碼有一個基本的理解。 – 2013-04-07 02:23:24