문제

스크립트: http://keith-wood.name/countdown.htm

매일 JSON 응답 :

items: { fajr: '5:23 am', sharooq: '7:23 am', dhur: '1:34 pm', asr: '4:66 pm': magrib: '6:23 pm', isha: '8:01 pm'}

사이트가로드되면 AJAX 요청을하고 위의 응답 시간을 얻습니다. 이들은 매일 다른 타이밍으로 일어나는 사건입니다. 나는 그 시간을 얻고 남은 시간 또는 시간 또는 초에 몇 분을 계산하고, 초가 끝나면 몇 분 전에 그 사건이 일어 났음을 보여주고 싶다. 15 분 후에 새로운 이벤트 수를 보여주십시오. 이것이 디스플레이에서 보는 방법입니다.

dhur 2 hours left
dhur 2 minutes left (if no longer hours left)
dhur 55 seconds left (if no longer minutes left)
dhur 5 seconds ago (if count down finished and then show how many seconds ago)
dhur 9 minutes ago (if extended more then seconds, then show how many minutes ago)
asr 1 hour left (after 15 minutes later time changes to new event)

내가 사용하는 스크립트가 좋지 않고 이런 종류의 작업에 대한 다른 스크립트를 선호한다면 나와 공유하십시오. jQuery 스크립트 일 필요는 없지만 jQuery 인 경우 도움이됩니다.

도움이 되었습니까?

해결책

나는 당신 이이 일을 다시 구현하지 않는 것이 좋을 것 같아요.

이 기능을위한 정말 멋진 jQuery 플러그인이 이미 있습니다 (i18N 지원도 포함).

jQuery Timeago

Timeago는 퍼지 타임 스탬프를 자동으로 업데이트 할 수있는 jQuery 플러그인입니다 (예 : "4 분"또는 "약 1 일 전"또는 "지금부터 2 년").

추신 : 설정하는 것을 잊지 마십시오 jQuery.timeago.settings.allowFuture = true; 미래의 날짜를 허용합니다


일종의 "콜백"이 필요하면 두 가지를 할 수 있습니다.

  1. 영어 만 지원한다고 가정하면 (I18N 없음) 단순히 사용 setInterval 20-25 초마다 jQuery Timeago가 설정 한 문자열이 "15 분 전"인지 확인한 다음 무엇이든 할 수 있습니다.
  2. 마구 자르기 플러그인의 코드를 조정하고 EG에 자신을 연결하십시오. $timeago.inWords 방법을 방법과하십시오 distanceMillis 매개 변수입니다 >=900000 (15*60*1000).
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top