javascript - 如何获取 fullcalendar v.4.2.0 实例?
问题描述
因此,我的页面中有一个 fullCalendar (v.4.2.0) 实例(在 document.ready 上加载/构建),我想在其他函数中访问该 fullCalendar 实例以动态添加事件。
使用$('#calendar').fullCalendar('getView')
它会显示 fullCalendar() 方法不存在的错误:
$(...).fullCalendar 不是函数
如何访问该实例?
我用来生成日历的代码如下:
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
plugins: [ 'timeGrid', 'dayGrid' ],
defaultView: 'timeGridWeek',
height: 700,
locale: 'pt',
allDaySlot: false,
handleWindowResize: true,
events: [
{
title: 'Teste1', // a property!
start: '2019-07-23 16:00',
end: '2019-07-23 17:00',
backgroundColor: '#fcba03',
borderColor: '#fcba03',
}
]
});
calendar.render();
解决方案
由于您使用的是 fullCalendar 版本 4,它不再被编写为 jQuery 插件,因此无法使用 jQuery 语法来访问方法。相反,只需引用您的calendar
变量(它可能需要在您的应用程序中具有广泛的范围 - 全局或以其他方式易于访问)。您会注意到您现有的代码在调用calendar.render();
.
此外,在“getView”方法的特定情况下,它已被简单地替换为view
引用当前视图的属性。
例如(见最后一行):
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
plugins: [ 'timeGrid', 'dayGrid' ],
defaultView: 'timeGridWeek',
height: 700,
locale: 'pt',
allDaySlot: false,
handleWindowResize: true,
events: [
{
title: 'Teste1', // a property!
start: '2019-07-23 16:00',
end: '2019-07-23 17:00',
backgroundColor: '#fcba03',
borderColor: '#fcba03',
}
]
});
calendar.render();
var vw = calendar.view; //get the current view
参考文档
推荐阅读
- css - 如何制作非交互式网格覆盖?
- html - 禁用“显示:无;” 在 CSS3/苏西
- java - 使用 Java 10 运行 .jar 文件时缺少 JavaFX 应用程序类
- sql - IF 在 WHERE 子句 SQL - 如果数字是 XI 想要得到 Y
- visual-studio - 如何在 Hololens 中获取注视/光标坐标?
- c# - 使用与 ConfuserEx 混淆的 C# DLL
- swift - 将关联类型限制为 someClass
- c# - 使用 Azure 聊天机器人时如何仅存储用户响应
- python - PyTorch:传递 numpy 数组进行权重初始化
- java - 如何使用 Jena API、Fuseki 和 TDB 基于现有 OWL 文件创建 Jena Triple Store?