WordPress自带jquery版本过低,通过wp_enqueue_scripts函数引用的jquery版本过低,比如是1.x版本。但是实际情况我们需要更高版本的jQuery和jQuery-Migrate。另一种情况,我们需要引用非本地的其他网站jQuery,同样也会遇到这个问题。
解决方法,重新注册wordpress库中的jQuery和jQuery-Migrate:
function update_jquery() { if( !is_admin()){ wp_deregister_script('jquery'); wp_register_script('jquery', "https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js", false, null); wp_enqueue_script('jquery'); wp_deregister_script('jquery-migrate'); wp_register_script('jquery-migrate', "https://cdn.bootcss.com/jquery-migrate/3.0.0/jquery-migrate.min.js", false, null); wp_enqueue_script('jquery-migrate'); } } add_action("wp_enqueue_scripts", "update_jquery", 11);
若希望完全移除jQuery-Migrate,可参考:wordpress移除禁用jQuery Migrate