| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183 |
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset='utf-8' />
- <script src='../../bundle/dist/index.global.js'></script>
- <script src='https://cdn.jsdelivr.net/npm/[email protected]/dist/jquery.js'></script>
- <script>
- // The jQuery Connector
- // ----------------------------------------------------------------------------------------------------
- $.fn.fullCalendar = function(options) {
- var args = Array.prototype.slice.call(arguments, 1) // for a possible method call
- var res = this // what this function will return (the current jQuery object by default)
- this.each(function(i, el) { // loop each DOM element involved
- var $el = $(el)
- var calendar = $el.data('fullCalendar') // get the existing calendar object (if any)
- var singleRes // the returned value of this single method call
- // a method call
- if (typeof options === 'string') {
- if (options === 'getCalendar') {
- if (!i) { // first element only
- res = calendar
- }
- } else if (options === 'destroy') { // don't warn if no calendar object
- if (calendar) {
- calendar.destroy()
- $el.removeData('fullCalendar')
- }
- } else if (!calendar) {
- console.warn('Attempting to call a FullCalendar method on an element with no calendar.')
- } else if ($.isFunction(calendar[options])) {
- singleRes = calendar[options].apply(calendar, args)
- if (!i) {
- res = singleRes // record the first method call result
- }
- } else {
- console.warn("'" + options + "' is an unknown FullCalendar method.")
- }
- // an initialization
- } else {
- if (calendar) {
- console.warn('Can\'t initialize another calendar on the same element.')
- } else {
- calendar = new FullCalendar.Calendar(el, options)
- $el.data('fullCalendar', calendar)
- calendar.render()
- }
- }
- })
- return res
- }
- // The Actual Example
- // ----------------------------------------------------------------------------------------------------
- $(document).ready(function() {
- var $calendar = $('#calendar')
- $calendar.fullCalendar({
- headerToolbar: {
- left: 'prev,next today',
- center: 'title',
- right: 'dayGridMonth,timeGridWeek,timeGridDay,listWeek'
- },
- initialDate: '2020-09-12',
- navLinks: true, // can click day/week names to navigate views
- editable: true,
- dayMaxEvents: true, // allow "more" link when too many events
- events: [
- {
- title: 'All Day Event',
- start: '2020-09-01',
- },
- {
- title: 'Long Event',
- start: '2020-09-07',
- end: '2020-09-10'
- },
- {
- groupId: 999,
- title: 'Repeating Event',
- start: '2020-09-09T16:00:00'
- },
- {
- groupId: 999,
- title: 'Repeating Event',
- start: '2020-09-16T16:00:00'
- },
- {
- title: 'Conference',
- start: '2020-09-11',
- end: '2020-09-13'
- },
- {
- title: 'Meeting',
- start: '2020-09-12T10:30:00',
- end: '2020-09-12T12:30:00'
- },
- {
- title: 'Lunch',
- start: '2020-09-12T12:00:00'
- },
- {
- title: 'Meeting',
- start: '2020-09-12T14:30:00'
- },
- {
- title: 'Happy Hour',
- start: '2020-09-12T17:30:00'
- },
- {
- title: 'Dinner',
- start: '2020-09-12T20:00:00'
- },
- {
- title: 'Birthday Party',
- start: '2020-09-13T07:00:00'
- },
- {
- title: 'Click for Google',
- url: 'http://google.com/',
- start: '2020-09-28'
- }
- ]
- })
- $('#prev-button').on('click', function() {
- $calendar.fullCalendar('prev')
- })
- $('#next-button').on('click', function() {
- $calendar.fullCalendar('next')
- })
- $('#gotoDate-button').on('click', function() {
- $calendar.fullCalendar('gotoDate', '2020-09-01')
- })
- })
- </script>
- <style>
- body {
- margin: 40px 10px;
- padding: 0;
- font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
- font-size: 14px;
- }
- #calendar {
- max-width: 1100px;
- margin: 0 auto;
- }
- </style>
- </head>
- <body>
- <button id='prev-button'>prev</button>
- <button id='next-button'>next</button>
- <button id='gotoDate-button'>goto year 2000</button>
- <div id='calendar'></div>
- </body>
- </html>
|