javascript - 从工作日结束到下一个工作日开始的完整日历 JS 换行时间

标签 javascript jquery fullcalendar fullcalendar-3

我在 AgendaWeek View 中使用 Full Calendar JS,并且我将可见时间限制为早上 8 点到下午 5 点,而不是默认显示的每天完整的 12 小时,但是当我尝试扩展事件的时间并将其拖到过去时可见时间结束时,它不会换行到第二天。相反,它会一直持续到午夜才结束。

有没有简单的方法来防止这种情况?基本上我只希望它显示一周中上午 8 点到下午 5 点之间的事件。

这是我的代码:

$('#calendar').fullCalendar({
  defaultView: 'agendaWeek',
  allDaySlot: false,
  minTime: '8:00am',
  maxTime: '6:00pm',
  weekends: false,
  header: {
    left: 'prev,next',
    center: 'title',
    right: ''
  },
  editable: true,
  droppable: true, // this allows things to be dropped onto the calendar !!!
  events: "{{URL::to('schedule/fetch')}}"
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.10.0/fullcalendar.min.js"></script>

我的事件存储在数据库中,只有开始时间和持续时间,均为 UTC 格式。为了获得结束时间,我只需添加开始时间和持续时间,然后再通过 AJAX 将其传回。我假设如果它溢出到第二天,我需要让完整日历简单地添加到持续时间,但我只是不确定如何实现这一点。

最佳答案

我在完整日历的选择中使用以下解决方案解决了问题:

select: function(start, end) {

     if(start.format() > minTime && start.format() <  maxTime){

       eventId++;               
       var event = {
          id : eventId,
          start:  moment(start.format()),
          end:   moment(end.format())
       };
       $('#calendar').fullCalendar('renderEvent', event, true); 
    }

}

关于javascript - 从工作日结束到下一个工作日开始的完整日历 JS 换行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12303653/

相关文章:

javascript - 从 Perl 调用 Javascript 函数

javascript - 用于停止滚动/聚焦的 url 哈希标记

javascript - backbone.js 事件没有触发,我不明白为什么

javascript - 无法在溢出CSS中查看ls

Java向xml文件添加具有属性的元素

javascript - fullcalendar:只有在我通过事件函数加载我的事件后,才有办法调用 dayRender

javascript - FullCalendar 不显示日期时间

javascript - 完全加载后显示窗口

javascript - 尝试阻止提交空表单

javascript - JQuery 选项卡不起作用 - 没有错误