2012-12-11 4 views
-1

Date 개체의 시간과 분을 어떻게 검색 한 다음 메시지를 표시합니까? 시간이 오후 9 시부 터 오전 12시 사이라면 "We are closed"라고 표시하고 싶지 않으면 "We are open"이라고 표시하고 싶습니다.자바 스크립트 확인 시간 및 메시지 표시

<script language="javascript"> 
<!-- 
    today = new Date(); 
    document.write('<BR>We are Open'); 
//--> 
</script> 
+1

당신은 무엇을 시도 했습니까? – Neal

+0

메시지를 표시하고 제거하기 위해 setTimeout을 사용합니다. – EricG

+0

오후 9시 이전에 사이트를 방문하여 오후 9 시까 지 머문다면 9시에 여전히 팝업됩니다. – EricG

답변

2

todayDate이다, 그래서 당신은 그것의 기능을 사용할 수 있습니다. 귀하의 경우 today.getHours()을 사용하고 열린 메시지를 표시하려면 >= 12< 21인지 확인하십시오. 닫힌 메시지는 else에 나타날 수 있습니다.

이것은 클라이언트의 시간을 사용하므로, 전 세계 웹 페이지에서 이것을 사용하는 경우 유럽에서 열릴 수 있지만 동시에 미국에서는 닫힐 수 있습니다.

0

당신은 다음 사용 분 그리고 날짜에서 시간을 얻을 수 있습니다 :

var d = new Date(); 
    var m = d.getMinutes(); 
    var h = d.getHours(); 

가 원하는 결과를 다음과 같은 조건을 사용하여 VAR의 시간을 비교하고 얻을 : 내가 가진 경우

if(h>= 12 && h<= 21) 
+0

나중에 참조 할 수 있도록 downvote의 이유를 설명하십시오. 감사. –

1

잘 모르겠어요 "시간 논리"가 맞으면 (if 문을 확인하십시오), 그러나 이것은 당신이 찾고있는 것이어야합니다.

는 내가 보통 난 그냥 지식 게시하도록하겠습니다 이러한 유형의 솔루션을 사용
+0

답을위한 thx 그것은 우리가 닫힌다는 것을 보여준다. 그러나 내가 <= -21로 바뀌면 그것은 우리가 열려 있다는 것을 보여준다. – user1895103

0

는 비교가 더 쉽게, 당신은 기본적으로 정수로 시간을 변환

var d = new Date(); 
var currtime = d.getHours() * 100 + d.getMinutes(); 

// now your currtime looks like 530 if it's 5.30am, or 1730 if it's 5.30 pm 
// you can just do a simple comparison between ints 

if (currtime > 2000 and currtime < 800){ 
    // closed between 20:00 (8 pm) and 8:00 (8 am) as an example 
    alert("We are closed"); 
} 

(pimvdb의 대답은 참으로 더 분명하다)

var objDate = new Date(); 
var hours = objDate.getHours(); 
if(hours >= 12 && hours <= 21){ 
    document.write('We Are Closed'); 
} 
else{ 
    document.write('We are Open'); 
} 
(그렇게 그리 읽기 쉽지 않고 유지할 수 없다)