bootstrap 5 彻底移除 jquery 依赖,js api 必须用 bootstrap.modal 等原生类调用,data-* 属性强制要求 bs- 前缀,脚本需在 dom 就绪后执行,事件和 dom 操作需适配原生 api。

Bootstrap 5 的 JS API 调用必须用 bootstrap.Modal,不是 $ 或 jQuery
升级后直接报 ReferenceError: $ is not defined,说明代码里还残留 jQuery 风格调用。Bootstrap 5 不只是“不依赖 jQuery”,而是整个 JS 层彻底重写为原生类构造器,bootstrap 是全局对象,挂载在 window 上,但前提是 bootstrap.bundle.min.js 已加载完成且执行完毕。
常见错误现象:
-
$('#myModal').modal('show')这类写法会直接报错,因为$根本不存在 -
bootstrap.Modal.getInstance()报TypeError: Cannot read property 'getInstance' of undefined,大概率是脚本执行时机太早——DOM 没就绪,或bootstrap.bundle.min.js加载顺序在调用代码之后
实操建议:
- 把初始化代码包在
document.addEventListener('DOMContentLoaded', () => { ... })里,或确保<script></script>放在










