用途:帮助在 WordPress 和旧式 Web 项目中,将 jQuery 3.x 安全迁移至 4.0.0,规避破坏性变更带来的运行错误。
主要能力:梳理 jQuery 4.0 的破坏性变更,包括移除的工具函数($.isArray、$.trim、$.parseJSON、$.type、$.now、$.isNumeric、$.isFunction、$.isWindow、$.camelCase、$.nodeName)、原型方法 push/sort/splice、toggleClass 布尔签名、slim 构建移除的 Deferreds/Callbacks/AJAX/动画,以及 focus/blur 事件顺序改为 W3C 规范(blur → focusout → focus → focusin)。提供原生替代写法(如 Array.isArray、JSON.parse、str.trim、Date.now)与临时 polyfill 思路。
使用方式:升级前先引入 jquery-migrate-4.0.2 在控制台查看弃用警告,检查代码后逐步替换。可用 npm install jquery@4.0.0(测试时加 jquery-migrate@4.0.2)。WordPress 场景可通过 wp_deregister_script/wp_register_script 替换 jquery-core 并挂载 enqueue 脚本,但仅建议用于测试。AJAX 加载脚本需显式指定 dataType: 'script' 或使用 $.getScript。
适用场景:WordPress 主题与插件、遗留前端项目、需要评估第三方插件兼容性的升级排查。
限制:升级前必须在开发环境用 migrate 插件实测,不可直接上生产;WordPress 后台不应受影响,需用条件判断只改前端;第三方插件可能长期不兼容,需保留 jquery-migrate 直至修复;polyfill 仅为临时手段,应最终改用原生方法;具体浏览器支持与包版本以官方文档为准。