2015-02-24 150 views
0

我需要在頁眉中顯示一段腳本,以便在週一至週五的上午8:00至下午5:30之間顯示。它需要保留在標題中用於模板目的。頁面頁眉內的時間腳本

腳本如下:

<head><script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 
<script type="text/javascript" src="http://www.example.com/chat/scripts/livechat.js"></script></head> 

現在,我通常會採取以下方法,但它並不適用,因爲這不是一個div:

<script>// get current time 
var d = new Date(), 
hours = d.getHours(), 
mins = d.getMinutes(); 
day = d.getDay(); 

// if day is mon-fri and time is between 8am and 5:30pm 
if(0 < day < 6 
    && hours >= 8 
    && (hours < 17 || hours === 17 && mins <= 30)){ 

    $('.mydiv').show(); 
};</script> 

我很困惑至於如何使這項工作。任何幫助將不勝感激。

回答

1

我認爲你在if中有小錯誤。在JS中,0 < day < 6不正確。

if((day > 0 && day < 6 ) 
    && hours >= 8 
    && (hours < 17 || hours === 17 && mins <= 30)){ 

    $('.mydiv').show(); 
} 
0

通過Javascript在客戶端執行此操作有一個缺點,即用戶可以進入代碼並進行更改並使其加載,即使可能一種解決方案是將服務器端中的單行生成爲HTML 併發送回來帶或不帶該行, 例如,如果您使用的是Java和JSP您可以在Java calulcate的條件,並將其存儲就像一個配置對象:

<c:if test="{myappConfig.isLiveChatEnabled eq true} 
//... include JS file 
</c:if> 

,但如果你想通過JS做你可以看看Determine if a date is a Saturday or a Sunday using JavaScript這將有助於構建條件語句。

+0

您對服務器端生成的HTML有何建議? – 2015-02-24 21:42:10

+0

如果您使用的是JSP或Java,則可以在服務器端存儲屬性文件,然後應用if條件,如上面的註釋 – guilhebl 2015-02-24 23:44:59