<h1>TIME: <%= Time.now.strftime("%H:%M:%S") %></h1>
在模板中,我的時間停止了。我想像電子手錶一樣爲它製作動畫。如何在軌道上計算時間
刷新頁面時會改變時間。
例如,我要去索引頁,現在時間顯示:12:30:50(HH:MM:SS)。我再次刷新,時間顯示:12:31:10。
我想表明我秒鐘是這樣的:50 51 52 53 54 .....
<h1>TIME: <%= Time.now.strftime("%H:%M:%S") %></h1>
在模板中,我的時間停止了。我想像電子手錶一樣爲它製作動畫。如何在軌道上計算時間
刷新頁面時會改變時間。
例如,我要去索引頁,現在時間顯示:12:30:50(HH:MM:SS)。我再次刷新,時間顯示:12:31:10。
我想表明我秒鐘是這樣的:50 51 52 53 54 .....
function displayTime() {
var timer=document.getElementById('timer');
var currentdate = new Date();
var hours = currentdate.getHours();
var minutes = currentdate.getMinutes();
var seconds = currentdate.getSeconds();
timer.innerHTML = hours + ':' + ("0" + minutes).slice(-2) + ':' + ("0" + seconds).slice(-2);
};
setInterval(displayTime, 1000);
<h1>Time :
<p id="timer">
<%= Time.now.strftime("%H:%M:%S") %>
</p>
</h1>
首先,讓我們創建一個顯示當前日期的函數。爲此,我們只需找到我們感興趣的p
標籤(使用getElementById
),並使用innerHTML
來寫入它。這是功能displayTime
。
然後,我們希望每秒都運行這個函數,所以我們使用:setInterval
。
注意我保留<%= Time.now.strftime("%H:%M:%S") %>
,這樣如果javascript未啓用,仍然有日期。如果這不是預期的行爲,那麼你可以替換它。
將您的代碼轉換爲可運行表單。當然,再培訓局部分工作並不完善。 –
謝謝。是工作! –
我認爲要用javascript或jquery做得更好 –
Rails生成html然後將其傳遞給瀏覽器。之後,鐵軌與它沒有任何關係。爲了讓頁面上的內容動態變化,你需要一個客戶端腳本 - 例如javascript。您可以將JavaScript寫入Rails模板,並且Rails會將其傳遞給瀏覽器以運行。 –