javascript - 基于日期的脚本不起作用

标签 javascript jquery html

我在我的网站中添加了一个查询,以便它将根据日期显示 div。我在我的网站中添加了 30 个 div,并向其中添加了“不显示”。使用基于日期的查询使一个 div 每天处于事件状态。以前,当我添加它 2 天后它就可以工作了。但当我添加 30 天的基础时,它对我不起作用。我的网址是here

可以查看代码执行here .

<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script>
window.setInterval(function(){
  var current = new Date();
  var expiry  = new Date("March 26, 2017 12:00:00")
  var expiry2 = new Date("March 27, 2017 12:00:00")
 var expiry3 = new Date("March 28, 2017 12:00:00")
 var expiry4 = new Date("March 29, 2017 12:00:00")
 var expiry5 = new Date("March 30, 2017 12:00:00")
 var expiry6 = new Date("April 01, 2017 12:00:00")
 var expiry7 = new Date("April 02, 2017 12:00:00")
 var expiry8 = new Date("April 03, 2017 12:00:00")
 var expiry9 = new Date("April 04, 2017 12:00:00")
 var expiry10 = new Date("April 05, 2017 12:00:00")
 var expiry11 = new Date("April 06, 2017 12:00:00")
 var expiry12 = new Date("April 07, 2017 12:00:00")
 var expiry13 = new Date("April 08, 2017 12:00:00")
 var expiry14 = new Date("April 09, 2017 12:00:00")
 var expiry15 = new Date("April 10, 2017 12:00:00")
 var expiry16 = new Date("April 11, 2017 12:00:00")
 var expiry17 = new Date("April 12, 2017 12:00:00")
 var expiry18 = new Date("April 13, 2017 12:00:00")
 var expiry19 = new Date("April 14, 2017 12:00:00")
 var expiry20 = new Date("April 15, 2017 12:00:00")
var expiry21 = new Date("April 16, 2017 12:00:00")
var expiry22 = new Date("April 17, 2017 12:00:00")
var expiry23 = new Date("April 18, 2017 12:00:00")
var expiry24 = new Date("April 19, 2017 12:00:00")
var expiry25 = new Date("April 20, 2017 12:00:00")
var expiry26 = new Date("April 21, 2017 12:00:00")
var expiry27 = new Date("April 22, 2017 12:00:00")
var expiry28 = new Date("April 23, 2017 12:00:00")
var expiry29 = new Date("April 24, 2017 12:00:00")
var expiry30 = new Date("April 25, 2017 12:00:00")
  if(current.getTime()>expiry.getTime()){
    $('.panchang_one').hide();
    $('.panchang_two').show();
  }
  else if(current.getTime()>expiry2.getTime()){
       $('.panchang_two').hide();
       $('.panchang_three').show();
   }
  else if(current.getTime()>expiry3.getTime()){
       $('.panchang_three').hide();
       $('.panchang_four').show();
   }
  else if(current.getTime()>expiry4.getTime()){
       $('.panchang_four').hide();
       $('.panchang_five').show();
   }
  else if(current.getTime()>expiry5.getTime()){
       $('.panchang_five').hide();
       $('.panchang_six').show();
   }
  else if(current.getTime()>expiry6.getTime()){
       $('.panchang_six').hide();
       $('.panchang_seven').show();
   }
  else if(current.getTime()>expiry7.getTime()){
       $('.panchang_seven').hide();
       $('.panchang_eight').show();
   }
  else if(current.getTime()>expiry8.getTime()){
       $('.panchang_eight').hide();
       $('.panchang_nine').show();
   }
  else if(current.getTime()>expiry9.getTime()){
       $('.panchang_nine').hide();
       $('.panchang_ten').show();
   }
  else if(current.getTime()>expiry10.getTime()){
       $('.panchang_ten').hide();
       $('.panchang_eleven').show();
   }
  else if(current.getTime()>expiry11.getTime()){
       $('.panchang_eleven').hide();
       $('.panchang_twelve').show();
   }
  else if(current.getTime()>expiry12.getTime()){
       $('.panchang_twelve').hide();
       $('.panchang_thirteen').show();
   }
  else if(current.getTime()>expiry13.getTime()){
       $('.panchang_thirteen').hide();
       $('.panchang_fourteen').show();
   }
  else if(current.getTime()>expiry14.getTime()){
       $('.panchang_fourteen).hide();
       $('.panchang_fifteen').show();
   }
  else if(current.getTime()>expiry15.getTime()){
       $('.panchang_fifteen').hide();
       $('.panchang_sixteen').show();
   }
  else if(current.getTime()>expiry16.getTime()){
       $('.panchang_sixteen').hide();
       $('.panchang_seventeen').show();
   }
  else if(current.getTime()>expiry17.getTime()){
       $('.panchang_seventeen').hide();
       $('.panchang_eighteen').show();
   }
  else if(current.getTime()>expiry18.getTime()){
       $('.panchang_eighteen').hide();
       $('.panchang_nineteen').show();
   }
  else if(current.getTime()>expiry19.getTime()){
       $('.panchang_nineteen').hide();
       $('.panchang_twenty').show();
   }
  else if(current.getTime()>expiry20.getTime()){
       $('.panchang_twenty').hide();
       $('.panchang_twentyone').show();
   }
  else if(current.getTime()>expiry21.getTime()){
       $('.panchang_twentyone').hide();
       $('.panchang_twentytwo').show();
   }
  else if(current.getTime()>expiry22.getTime()){
       $('.panchang_twentytwo').hide();
       $('.panchang_twentythree').show();
   }
  else if(current.getTime()>expiry23.getTime()){
       $('.panchang_twentythree').hide();
       $('.panchang_twentyfour').show();
   }
  else if(current.getTime()>expiry24.getTime()){
       $('.panchang_twentyfour').hide();
       $('.panchang_twentyfive').show();
   }
  else if(current.getTime()>expiry25.getTime()){
       $('.panchang_twentyfive').hide();
       $('.panchang_twentysix').show();
   }
  else if(current.getTime()>expiry26.getTime()){
       $('.panchang_twentysix').hide();
       $('.panchang_twentyseven').show();
   }
  else if(current.getTime()>expiry27.getTime()){
       $('.panchang_twentyseven').hide();
       $('.panchang_twentyeight').show();
   }
  else if(current.getTime()>expiry28.getTime()){
       $('.panchang_twentyeight').hide();
       $('.panchang_twentynine').show();
   }
  else if(current.getTime()>expiry29.getTime()){
       $('.panchang_twentynine').hide();
       $('.panchang_thirty').show();
   }
}, 3000);
$('.panchang_one').show(); 
</script>

谁能指出我做错了什么?

最佳答案

您的 JavaScript 逻辑存在问题。在您的情况下,当前日期始终大于任何到期命名变量中的日期,因此始终执行第一个 if 语句,其余的语句在 else if 中提供 block 永远不会被执行。这就是 if elseif 语句的工作原理,即当 if block 中的条件计算为 true 时,则不执行 elseif 语句。 您需要使用所有到期日期变量(即 expiry 、 expiry2 、 expiry3 、 expiry4 等)检查当前日期。

需要更正: 将 else if 替换为 if

正确的逻辑是:

<script>
    window.setInterval(function(){
      var current = new Date();
      var expiry  = new Date("March 26, 2017 12:00:00")
      var expiry2 = new Date("March 27, 2017 12:00:00")
     var expiry3 = new Date("March 28, 2017 12:00:00")
     var expiry4 = new Date("March 29, 2017 12:00:00")
     var expiry5 = new Date("March 30, 2017 12:00:00")
     var expiry6 = new Date("April 01, 2017 12:00:00")
     var expiry7 = new Date("April 02, 2017 12:00:00")
     var expiry8 = new Date("April 03, 2017 12:00:00")
     var expiry9 = new Date("April 04, 2017 12:00:00")
     var expiry10 = new Date("April 05, 2017 12:00:00")
     var expiry11 = new Date("April 06, 2017 12:00:00")
     var expiry12 = new Date("April 07, 2017 12:00:00")
     var expiry13 = new Date("April 08, 2017 12:00:00")
     var expiry14 = new Date("April 09, 2017 12:00:00")
     var expiry15 = new Date("April 10, 2017 12:00:00")
     var expiry16 = new Date("April 11, 2017 12:00:00")
     var expiry17 = new Date("April 12, 2017 12:00:00")
     var expiry18 = new Date("April 13, 2017 12:00:00")
     var expiry19 = new Date("April 14, 2017 12:00:00")
     var expiry20 = new Date("April 15, 2017 12:00:00")
    var expiry21 = new Date("April 16, 2017 12:00:00")
    var expiry22 = new Date("April 17, 2017 12:00:00")
    var expiry23 = new Date("April 18, 2017 12:00:00")
    var expiry24 = new Date("April 19, 2017 12:00:00")
    var expiry25 = new Date("April 20, 2017 12:00:00")
    var expiry26 = new Date("April 21, 2017 12:00:00")
    var expiry27 = new Date("April 22, 2017 12:00:00")
    var expiry28 = new Date("April 23, 2017 12:00:00")
    var expiry29 = new Date("April 24, 2017 12:00:00")
    var expiry30 = new Date("April 25, 2017 12:00:00")
      if(current.getTime()>expiry.getTime()){
        $('.panchang_one').hide();
        $('.panchang_two').show();
      }
       if(current.getTime()>expiry2.getTime()){
           $('.panchang_two').hide();
           $('.panchang_three').show();
       }
       if(current.getTime()>expiry3.getTime()){
           $('.panchang_three').hide();
           $('.panchang_four').show();
       }
       if(current.getTime()>expiry4.getTime()){
           $('.panchang_four').hide();
           $('.panchang_five').show();
       }
       if(current.getTime()>expiry5.getTime()){
           $('.panchang_five').hide();
           $('.panchang_six').show();
       }
       if(current.getTime()>expiry6.getTime()){
           $('.panchang_six').hide();
           $('.panchang_seven').show();
       }
       if(current.getTime()>expiry7.getTime()){
           $('.panchang_seven').hide();
           $('.panchang_eight').show();
       }
       if(current.getTime()>expiry8.getTime()){
           $('.panchang_eight').hide();
           $('.panchang_nine').show();
       }
       if(current.getTime()>expiry9.getTime()){
           $('.panchang_nine').hide();
           $('.panchang_ten').show();
       }
       if(current.getTime()>expiry10.getTime()){
           $('.panchang_ten').hide();
           $('.panchang_eleven').show();
       }
       if(current.getTime()>expiry11.getTime()){
           $('.panchang_eleven').hide();
           $('.panchang_twelve').show();
       }
       if(current.getTime()>expiry12.getTime()){
           $('.panchang_twelve').hide();
           $('.panchang_thirteen').show();
       }
       if(current.getTime()>expiry13.getTime()){
           $('.panchang_thirteen').hide();
           $('.panchang_fourteen').show();
       }
       if(current.getTime()>expiry14.getTime()){
           $('.panchang_fourteen').hide();
           $('.panchang_fifteen').show();
       }
       if(current.getTime()>expiry15.getTime()){
           $('.panchang_fifteen').hide();
           $('.panchang_sixteen').show();
       }
       if(current.getTime()>expiry16.getTime()){
           $('.panchang_sixteen').hide();
           $('.panchang_seventeen').show();
       }
       if(current.getTime()>expiry17.getTime()){
           $('.panchang_seventeen').hide();
           $('.panchang_eighteen').show();
       }
       if(current.getTime()>expiry18.getTime()){
           $('.panchang_eighteen').hide();
           $('.panchang_nineteen').show();
       }
       if(current.getTime()>expiry19.getTime()){
           $('.panchang_nineteen').hide();
           $('.panchang_twenty').show();
       }
       if(current.getTime()>expiry20.getTime()){
           $('.panchang_twenty').hide();
           $('.panchang_twentyone').show();
       }
       if(current.getTime()>expiry21.getTime()){
           $('.panchang_twentyone').hide();
           $('.panchang_twentytwo').show();
       }
       if(current.getTime()>expiry22.getTime()){
           $('.panchang_twentytwo').hide();
           $('.panchang_twentythree').show();
       }
       if(current.getTime()>expiry23.getTime()){
           $('.panchang_twentythree').hide();
           $('.panchang_twentyfour').show();
       }
       if(current.getTime()>expiry24.getTime()){
           $('.panchang_twentyfour').hide();
           $('.panchang_twentyfive').show();
       }
       if(current.getTime()>expiry25.getTime()){
           $('.panchang_twentyfive').hide();
           $('.panchang_twentysix').show();
       }
       if(current.getTime()>expiry26.getTime()){
           $('.panchang_twentysix').hide();
           $('.panchang_twentyseven').show();
       }
       if(current.getTime()>expiry27.getTime()){
           $('.panchang_twentyseven').hide();
           $('.panchang_twentyeight').show();
       }
       if(current.getTime()>expiry28.getTime()){
           $('.panchang_twentyeight').hide();
           $('.panchang_twentynine').show();
       }
       if(current.getTime()>expiry29.getTime()){
           $('.panchang_twentynine').hide();
           $('.panchang_thirty').show();
       }
    }, 3000);
    $('.panchang_one').show(); 
    </script>

希望这有帮助!

关于javascript - 基于日期的脚本不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43052170/

相关文章:

php - Jquery 手机 : New Ajax Loaded Page not Loading new JS

javascript - 如何在跨域的iframe中获取父域名?

javascript - 阻止用户插入*

javascript - 删除 ul 元素左侧的多余空格

javascript - 使用 onmouseover/onmouseout 更改可见性

javascript - 如何检测图像何时加载(通过 props 提供)并在 React 中更改状态?

javascript - 原型(prototype)和 YUI

javascript - 如何在 jqGrid 中填充哪些单元格未被编辑的单元格

jquery - 告诉 JQuery Mobile 不要添加类?

javascript - jQuery:Slidedown li on Hover 和 SlideUp on mouse out