我有一個關於加載基於一天中的時間或日期更改CSS的JavaScript的問題。根據日期或時間的日期或時間更改CSS
問題:如何緩存圖像以避免頁面間的加載?該腳本工作正常,並根據一天中的時間將該類添加到正文和標題中。但是,當用戶點擊網站的下一頁時,它將重新加載相同的CSS類,並使該網站在加載CSS之前閃爍爲白色。
我已將腳本放置在頁面底部和標題中。但它仍然在加載腳本的每個頁面上閃爍。每當用戶從頁面轉到頁面時,是否可以防止腳本加載?
這裏是Js代碼。
function TimeOfDaySiteChange() {
var d = new Date();
var n = d.getHours();
if (n < 5) {
// midnight
night();
} else if (n > 16 && n < 20) {
// If time is between 5PM – 8PM sunset theme to 'body'
dusk();
} else if (n > 19) {
// If time is 8PM
night();
} else if (n > 8) {
// If time is 9AM
daytime();
} else {
// Else use 'dawn' theme
dawn();
}
}
function dawn() {
jQuery('body').addClass('sunrise_bg');
jQuery('#header_masthead').addClass('sunrise_masthead_bg');
}
function daytime() {
jQuery('body').addClass('day_bg');
jQuery('#header_masthead').addClass('day_masthead_bg');
}
function dusk() {
jQuery('body').addClass('sunset_bg');
jQuery('#header_masthead').addClass('sunset_masthead_bg');
}
function night() {
jQuery('body').addClass('night_bg');
jQuery('#header_masthead').addClass('night_masthead_bg');
}
function init() {
TimeOfDaySiteChange();
}
window.onload = init;
我也嘗試過不window.onload
你有沒有試過把你的代碼放在文檔就緒函數中? – martincarlin87 2013-04-29 15:00:09
您不需要向#header_masthead添加類,只需執行body.sunrise_bg #header_masthead {} – powerbuoy 2013-04-29 15:01:41
關於flash;在JS加載之前,運行並最終添加一個類,瀏覽器將顯示默認頁面。我會在服務器端添加類。 – powerbuoy 2013-04-29 15:02:55