前言
最近项目在漏洞扫描过程中发现现在的jquery版本受多个跨站点脚本漏洞影响,需要升级jquery版本。
1、首先下载高版本的jquery,我这里升级的是3.6.0
2、对应的bootstrap版本也要升级,这里升级的是3.3.7
本来以为替换完这两个文件后,会可以了,但是启动项目后发现很多样式啥的都不见了。经过一系列的互联网搜索后终于找到原因了。
由于jquery新版本会弃用旧版本中的一些方法,所以升级后会出现兼容性问题,如何解决呢。
*
1、手动将弃用的方法替换为新的方法(永远是备胎)
2、用迁移辅助插件jquery-migrate
jquery-migrate是一个用于 jQuery 迁移的辅助插件,它可以帮助您在升级 jQuery 版本时保持旧代码的兼容性。这个插件特别适用于从旧版本的 jQuery(如 1.x)升级到新版本(如 3.x)时使用。
jquery-migrate.js 插件的工作原理是:
它会在您升级 jQuery 版本后,检查您的代码中是否有使用 jQuery 废弃的方法和特性。
如果有,它会尝试将这些废弃的方法和特性替换为新的、兼容的方法和特性。
同时,它会在控制台中显示警告或提示,告诉您哪些旧的方法和特性已经被废弃,以及如何替换它们。
这里是jquery-migrate下载地址
3、使用
使用时只需要和jquery同时引入就可以了,比如:
<script th:src="@{/js/jquery.min.js}"></script>
<script th:src="@{/js/jquery-migrate.js}"></script>