jQuery交付倒计时-隐藏在周末的特定时间

时间:2018-07-23 11:26:08

标签: javascript jquery countdown countdowntimer jquery-countdown

我目前正在一个电子商务网站上,我们需要一个送货柜台。这是我目前正在工作的地方,周末在柜台藏在那里:

function twoD(n){
    return (n < 10 ? "0" : "") + n;
}
$(document).ready(function () {
    setInterval(function () {
        var now = new Date();
        var day = now.getDay();
        var end;

        if(day >= 1 && day <= 5) {
            end = new Date(now.getYear(), now.getMonth(), day, 14, 0, 0, 0);    
        } else {
            $('#wc_countdowntimer').hide();
        }

        var timeleft = end.getTime() - now.getTime();
        var diff = new Date(timeleft);


        $("#wc_countdowntimer").html("<i class='fa fa-clock-o'></i> Next shipment in " + twoD(diff.getHours()) + ":" + twoD(diff.getMinutes()) + ":" + twoD(diff.getSeconds()) + "");

    }, 1000);
});

唯一的问题是,我们希望计数器在星期五的14PM之后已经隐藏,然后在14PM之后的星期日再次显示。这样一来,只有在订单出货时间少于24小时后,计数器才会可见。

我尝试进行各种更改,但是我无法按照我想要的方式运行代码。

希望这里有人可以提供帮助。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

您可以这样做:

 function isVisibleByDate(date) {
   var isVisible = true;
   //  hidden already after 14PM on friday and before sunday after 14PM
   var hour = date.getHours();
   var day = date.getDay();
   if ((day == 5 && hour > 14) || (day == 6 && hour < 14)) isVisible = false;   

   return isVisible;
 }

Online demo (jsFiddle)