如果日期在范围之间,则JavaScript删除类

时间:2018-04-18 16:58:45

标签: javascript css date

如果日期在特定月份之间,我有一个删除类的代码。

var example = new Constructor()
function Constructor(){
   Service.getService().then(function(data){
      this.arr = data.data.array;
      return this.arr
   })
}

Constructor.prototype.getArray = function(){
   console.log(this.arr)
})
example.getArray();

但是我需要将它缩小到2月1日到4月15日。

4 个答案:

答案 0 :(得分:0)

因此,不要使用范围的月整数值,而是使用日期本身

<script type="text/javascript">
jQuery(document).ready(function(){
var month = new Date().getMonth()+1;
var start = new Date("2018-2-1");
var end = new Date("2018-4-15");
if(month >=start && month <=end){
 jQuery('.off-season-hours .mbhi-is-current').removeClass('mbhi-is-current');
}else{
 jQuery('.on-season-hours .mbhi-is-current').removeClass('mbhi-is-current');
}
});
</script>

答案 1 :(得分:0)

我个人会使用momentjs + twix

https://momentjs.com/docs/ http://isaaccambron.com/twix.js/

var range = moment("2018-02-01").twix("2018-04-15");
if(range.contains(moment())){
    //remove
}

答案 2 :(得分:0)

内置了getDate()个功能。

var month = new Date().getMonth() + 1;
var date = new Date().getDate() + 1;

if((month >= 2 && month <= 3) || (month === 4 && date <= 15)) {... your code}

基本上,它涵盖特殊情况,如果它是四月,它应该检查一个月的哪一天是活跃的,所以它可以删除该类。

答案 3 :(得分:0)

要粘贴到ControlAltDel上,如果您要比较特定日期,则不需要月份,您只需比较日期对象即可。此外,假设您不想记得每年回来更新一次,您也可以动态选择当前年份。

let today = new Date();
let offSeason = new Date(`${today.getFullYear()}-4-15`);
let onSeason = new Date(`${today.getFullYear()}-2-1`);

jQuery(`.${(today >=  onSeason && today <= offSeason ? 'on' : 'off')}-season-hours .mbhi-is-current`)
  .removeClass('mbhi-is-current');