Tôi muốn có tệp javascript để kiểm tra xem thời gian hiện tại có từ 7 giờ tối đến 7 giờ sáng hay không. Nếu vậy, nó sẽ thay đổi màu nền trên trang web của tôi thành X. Nếu thời gian hiện tại không phải là từ 7 giờ tối đến 7 giờ sáng, thì màu nền phải là Y. Vì tôi mới sử dụng Javascript Tôi không biết mọi thứ và đó là lý do tôi cần sự giúp đỡ của bạn!Javascript nếu thời gian là từ 7 giờ tối đến 7 giờ sáng, hãy làm điều này?
Trả lời
var today = new Date().getHours();
if (today >= 7 && today <= 19) {
document.body.style.background = "Red";
} else {
document.body.style.background = "Blue";
}
Xem fiddle.
Đây là JSBin
var currentTime = new Date().getHours();
if (currentTime >= 19 && currentTime <= 7) {
document.body.style.background = "/*your X color*/";
} else {
document.body.style.background = "/*your Y color*/";
}
lý do tại sao downvote (s), kiểm tra đăng JSBin –
này có thể giúp bạn:
function checkTime() {
var d = new Date(); // current time
var hours = d.getHours();
var mins = d.getMinutes();
if(hours>=19 || hours <=7)
{
document.body.style.background="";//set background color x
}
else
{
document.body.style.background="";//set background color y
}
}
Nevermind, Tôi đã đọc sai câu hỏi. –
var d = new Date();
var n = d.getHours(); //get the current local time's hour in military time (1..23)
//If the time is greater than or equal to 7pm or less than or equal to 7am
if (n >= 19 || n <= 7) {
//set background color to X
}
else {
//set background color to Y
}
Trên thực tế nó hoạt động theo cách – Spencer
Sự hiểu lầm của tôi - Tôi đọc câu hỏi giữa AM và PM, không phải PM và AM. Xin lỗi vì điều đó. –
tôi đề nghị sử dụng một lớp trên cơ thể để quản lý các phong cách, nhưng xử lý các lớp học trong JavaScript.
Thực chất bạn sẽ sử dụng lớp học Date để nhận giờ hiện tại trong thời gian quân sự (24 giờ). 7 giờ tối được thể hiện là 19 trong thời gian quân sự.
var hour = new Date().getHours();
// between 7 PM and 7 AM respectively
if(hour >= 19 || hour <= 7) {
document.body.className += 'between7';
} else {
document.body.className += 'notBetween7';
}
Sau đó, trong CSS, bạn có thể xử lý các lớp đó.
body.between7 {
background-color: green;
}
body.notBetween7 {
background-color: red;
}
Có thể vì câu hỏi yêu cầu thời gian từ "7 giờ tối đến 7 giờ sáng", không phải theo cách khác. Ai biết. Tôi thấy rằng bạn nhận xét ở khắp mọi nơi rằng họ so sánh các giá trị sai nhưng trên thực tế bạn là người đã phạm sai lầm. –
Điểm tốt @Felix, haha. Tôi đã bỏ lỡ điều đó. –
'ngày mới(). GetHours()' và so sánh trong 24h. – elclanrs
có thể trùng lặp [Từ 11 giờ đến 7 giờ sáng trong Javascript] (http://stackoverflow.com/questions/14546193/between-11pm-and-7am-in-javascript) –