이 jQuery 코드를 사용하여 왼쪽 10 시까 지 왼쪽에 표시 할 코드입니다.Jquery Daily Timer Fail
오전 10 시부 터 오후 14 시까 지 일부 이미지가 제거됩니다.
14:00 이후에는 오전 10 시까 지 남은 시간이 표시됩니다. 또한 주말을 고려하여 오프셋을 추가합니다.
훌륭하게 대부분의 시간은, 그러나 그것은 ... 그것은 시간이 지남에 길을 간다 14시 후 보인다 작품
사람이 실패하는 이유, 내가 오랫동안을 위해 그것을 찾아 봤는데 볼 수 ... 이제 나는 혼란에 빠졌어! 도와주세요!
$(document).ready(function() {
// 24 hour based
var targetTime = 1000;
var targetHour = 10;
var openingTime = 1400;
var openingHour = 14;
var currentTime = new Date();
// sun 0 mon 1 ... fri 5 sat 6
var currentDay = currentTime.getDay();
var offset = 24;
// friday
if (currentDay === 5) {
offset = 60;
} // saturday
else if (currentDay === 6) {
offset = 48;
}
var the_current_time = ''+ currentTime.getHours() + '' + currentTime.getMinutes() + '';
if(the_current_time > targetTime && the_current_time < openingTime) {
var time_hours = (openingHour + offset) - currentTime.getHours() - 1;
var time_min = 60 - currentTime.getMinutes();
var time_seconds = 60 - currentTime.getSeconds();
$('#hours_left').append(time_hours, ':',time_min < 10 ? "0" : "" , time_min , ':' , time_seconds < 10 ? "0" : "" , time_seconds);
$('#watch_image').attr('src','http://cdn.shopify.com/s/files/1/0085/1702/t/1/assets/closed-until-icon.png');
$('#time-left-banner').css('width','275px');
$('.add-to-button').css('display','none');
$('#purchase').css('display','none');
}
else if(the_current_time > targetTime && the_current_time > openingTime) {
var time_hours = (targetHour + offset) - currentTime.getHours() - 1;
var time_min = 60 - currentTime.getMinutes();
var time_seconds = 60 - currentTime.getSeconds();
$('#hours_left').append(time_hours, ':',time_min < 10 ? "0" : "" , time_min , ':' , time_seconds < 10 ? "0" : "" , time_seconds);
}
else {
var time_hours = (targetHour + offset) - currentTime.getHours() - 1;
var time_min = 60 - currentTime.getMinutes();
var time_seconds = 60 - currentTime.getSeconds();
$('#hours_left').append(time_hours, ':',time_min < 10 ? "0" : "" , time_min , ':' , time_seconds < 10 ? "0" : "" , time_seconds);
}
});
답장을 보내 주셔서 대단히 감사합니다. vhallac이 다시 열릴 때까지 시간을 계산해야합니까? –
리팩토링에 대한 의견은 무시해도됩니다. 나는 당신이 함수를 약 10-15 줄 줄이고 코드 줄을 줄이면 버그가 줄어들 기 때문에 언급했다. 'the_current_time'에서 분만 제로 (또는'hours * 100 + minutes'로 계산)하면됩니다. – vhallac
대단히 고맙습니다. –