JSFiddle - React, Tailwind, and code Playground
by bemulima
HTML
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/main.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/main.min.css">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
<div id='container'>
<ul class="nav nav-tabs" id="myTab" role="tablist">
<li class="nav-item" role="presentation">
<a class="nav-link active" id="home-tab" data-toggle="tab" href="#home" role="tab" aria-controls="home" aria-selected="true">calendar 1</a>
</li>
<li class="nav-item" role="presentation">
<a class="nav-link" id="profile-tab" data-toggle="tab" href="#profile" role="tab" aria-controls="profile" aria-selected="false">calendar 2</a>
</li>
</ul>
<div class="tab-content" id="myTabContent">
<div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab">
<div id='source-calendar'></div>
</div>
<div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab">
<div id='destination-calendar'></div>
</div>
</div>
</div>
CSS
html, body {
margin: 0;
padding: 0;
font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
font-size: 14px;
}
#calendar {
max-width: 1100px;
margin: 40px auto;
}
#container {
padding: 20px 0 0 20px;
}
#container > * {
width: 600px;
margin: 0 20px 20px 0;
}
.fc-event-dragging{
pointer-events:none;
}
JavaScript
var srcCalendarEl = document.getElementById('source-calendar');
var destCalendarEl = document.getElementById('destination-calendar');
var srcCalendar = new FullCalendar.Calendar(srcCalendarEl, {
editable: true,
droppable: true,
initialDate: '2020-09-12',
events: 'https://fullcalendar.io/demo-events.json?overload-day',
eventLeave: function(info) {
console.log('event left!');
}
});
var destCalendar = new FullCalendar.Calendar(destCalendarEl, {
initialDate: '2020-09-12',
editable: true,
droppable: true, // will let it receive events!
eventReceive: function(info) {
console.log('event received!');
}
});
document.addEventListener('DOMContentLoaded', function() {
srcCalendar.render();
destCalendar.render();
});
$('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
srcCalendar.render();
destCalendar.render();
});
$(".nav-link").on('mouseenter', function(e){
$(this).tab('show');
})