[英]Prevent overlapping when dragging events onto FullCalendar
我有一些外部事件,仅在data-shareable ='true'时才应放到FullCalendar上。 如果data-shareable ='false',则该事件可以被删除,只要它不与另一个已删除事件重叠即可。
if (this.getAttribute('data-shareable') == 'true' ) {
$('#calendar').fullCalendar('renderEvent', copiedEventObject, true);
}else{
alert('this is not a shareable resource');
}
我创建了这个示例jsfiddle 。
注意:“事件2”是唯一可数据共享=“假”的事件,因此,如果它与另一个已删除事件重叠,则不应将其删除。
添加了第13至14行以扩展对象并保存有关data-id和data-shared的信息。
var eventObject = {
title: $.trim($(this).text()), // use the element's text as the event title
shareable: $(this).data('shareable'),
id: $(this).data('id')
};
现在,您将需要更改决策逻辑。 您将必须检查目标事件和拖动事件是否可共享,并且一个事件的开始或结束是否在另一个事件的范围之内,反之亦然。
如果可以共享,则无事可做,如果不能共享,请检查日期。
如果日期不重叠,请继续! 如果没有,请解雇并注意用户:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.