You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

嵌入fullcalendar.min.js报错:Cannot read property 'fn' of undefined求助

解决FullCalendar "Cannot read property 'fn' of undefined" 报错(已用jQuery 3.3.1仍无效)

我之前踩过一模一样的坑!这个报错看着是jQuery版本问题,但其实大多是加载顺序、作用域或者jQuery环境被修改导致的,给你几个实用的排查和解决方向:

  • 先确认jQuery的加载顺序绝对优先
    FullCalendar是基于jQuery开发的插件,必须让jQuery在它之前完全加载完成。你的HTML脚本标签顺序一定要是:先引入jQuery,再引入FullCalendar的JS文件。比如:

    <!-- 正确顺序 -->
    <script src="jquery-3.3.1.min.js"></script>
    <script src="fullcalendar.min.js"></script>
    

    要是把FullCalendar放在前面,它初始化的时候找不到jQuery.fn,就会抛出这个错误。

  • 排查是否用了noConflict()导致$失效
    如果你的项目里调用过jQuery.noConflict(),会把全局的$变量释放掉,而FullCalendar默认是用$来挂载插件的。这时候有两个解决办法:

    1. 在引入FullCalendar之前,重新把$绑定到jQuery:
      var $ = jQuery; // 把jQuery重新赋值给$
      
    2. 初始化日历的时候直接用jQuery代替$:
      jQuery('#calendar').fullCalendar({
        // 你的配置项
      });
      
  • 检查有没有重复加载jQuery
    有时候项目里会不小心引入多个版本的jQuery(比如头部加载了3.3.1,底部又加载了一个旧版本),后面的jQuery会覆盖前面的,导致FullCalendar依赖的环境出问题。你可以打开浏览器控制台的「Network」标签,搜索jquery,看看有没有重复的请求,把多余的删掉就行。

  • 确认FullCalendar版本和jQuery的兼容性
    虽然jQuery 3.3.1满足2.0+的要求,但某些旧版FullCalendar(比如v2.x早期版本)和jQuery 3.x可能存在小兼容问题。可以试试升级FullCalendar到对应兼容的版本(比如v3.x完全支持jQuery 3.x),或者去官方文档核对兼容性说明。

  • 检查脚本的作用域问题
    如果你的项目用了模块化开发(比如Webpack、RequireJS),jQuery可能没有暴露在全局window对象上,导致FullCalendar找不到它。这时候需要确保jQuery被挂载到全局,或者在模块里先引入jQuery,再加载FullCalendar。

内容的提问来源于stack exchange,提问作者陳銘山

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 07:13:45