2015-10-14 53 views
1

我試圖讓一個腳本,將做如下發生:的Javascript時間和工作日/週末CSS改變

  • 我需要從綠色我的網頁上更改元素的顏色爲紅色視當天的時間和星期幾。例如,週六我需要另一個時間窗口,而不是週一。

我苦苦尋找的一些作品。我發現了幾個根據時間改變CSS的腳本,但是我找不到能夠根據時間和日期更改CSS的腳本。有什麼地方可以使用腳本嗎?

腳本,我發現這取決於時間更改CSS: https://css-tricks.com/snippets/javascript/different-stylesheet-pending-the-time-of-day/

http://code.tutsplus.com/tutorials/how-to-create-a-time-based-css-style-sheet-switcher--net-22814

====

這是爲我工作(得到了別人一些幫助,我知道):

function getStylesheet() { 
var currentTime = new Date().getHours(); 
var currentDay = new Date().getDay(); 

document.write("<link rel='stylesheet' href='css/close.css'   
type='text/css'>"); 
    if (1 <= currentDay&&currentDay < 6){ 
    // mon/tue/wen/thu/fri 
    if (8 <= currentTime&&currentTime < 18) { 
    document.write("<link rel='stylesheet' href='css/open.css'  
    type='text/css'>"); 
} 
} else if (currentDay === 6) { 
    // Its Saturday 
    if (10 <= currentTime&&currentTime < 17) { 
    document.write("<link rel='stylesheet' href='css/open.css'  
    type='text/css'>"); 
    }  
} 
} 
getStylesheet(); 
+1

您可以從[* date.getDay()*](http:// www .ecma-international.org/ECMA-262/5.1 /#仲丁基15.9.5.16)。星期日爲0,星期六爲6.另請嘗試[* MDN *](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getDay)。 – RobG

回答

1

您需要通過Date().getDay將當天納入腳本。下面的代碼擴展了你鏈接到的CSS-tricks示例,並且應該給你一個起點。

此代碼是未經測試,並且可以提高配發的(你有一大堆如果最終報表)

繼承人的代碼的工作示例,取代簡單的輸出,而不是交換樣式表 - http://codepen.io/tonyedwardspz/pen/bVoprx?editors=101 (它只會在當前狀態的星期三工作,我不喜歡寫所有if語句)

function getStylesheet() { 
    var currentTime = new Date().getHours(); 
    var currentDay = new Date().getDay(); 

    if (currentDay === 0){ 
    // Its Sunday 
    if (currentTime < 5) { 
    document.write("<link rel='stylesheet' href='night.css' type='text/css'>"); 
    }else if (currentTime < 11) { 
    document.write("<link rel='stylesheet' href='morning.css' type='text/css'>"); 
    }else if (currentTime < 16) { 
    document.write("<link rel='stylesheet' href='day.css' type='text/css'>"); 
    } else if (currentTime < 22) { 
    document.write("<link rel='stylesheet' href='evening.css' type='text/css'>"); 
    }else if (currentTime <= 24) { 
    document.write("<link rel='stylesheet' href='night.css' type='text/css'>"); 
    } 
    } else if (currentDay === 1){ 
    // Its Monday 
    } else if (currentDay === 2){ 
    // Its Tuesday 
    } 
} 
+0

謝謝託尼,我會盡力使這項工作。 – NerdyBirdy

+0

沒問題。如果這解決了你的問題,不要忘記將它標記爲答案:) – tonyedwardspz

+0

嘗試了不同的事情,但這個腳本似乎並不奏效。我也嘗試了CSS技巧腳本,這確實有效,但當然這只是時間而不是日子。 – NerdyBirdy

相關問題