Нужны ли одновременно jquery.js и jquery-migrate.min.js?

5 июл. 2017 г., 20:51:32
Просмотры: 24.5K
Голосов: 8

Я управляю этим блогом. Как вы можете видеть, он загружает оба файла jquery.js?ver=1.12.4 и jquery-migrate.min.js?ver=1.4.1

Нужны ли мне оба этих файла, или я могу безопасно удалить один из них? Разве jquery-migrate.min.js не является новейшей версией jquery.js?

Как мне узнать, могу ли я удалить один из них или нет?

0
Все ответы на вопрос 2
3

Как указано в официальном блоге jQuery. Обратите внимание, что в цитате упоминается WordPress.

Выпуск jQuery Migrate 1.4.1 и путь к jQuery 3.0

Вышла версия 1.4.1 плагина jQuery Migrate. В ней всего несколько изменений, но самое важное из них исправляет проблему с не заключёнными в кавычки селекторами, которая встречается во многих темах WordPress. В большинстве случаев Migrate может автоматически исправить эту проблему при использовании с jQuery 1.12.x или 2.2.x, хотя некоторые сложные селекторы могут остаться неисправленными. Хорошая новость заключается в том, что все случаи незакавыченных селекторов, обнаруженные в темах WordPress, могут быть исправлены этой версией Migrate!

Краткий ответ на ваш вопрос: да, вы можете удалить скрипт jQuery migration, и если после его удаления вы не заметите нежелательного поведения, то можно с уверенностью сказать, что ссылку на этот скрипт можно полностью убрать.

Подробнее можно прочитать здесь

5 июл. 2017 г. 20:57:22
Комментарии

Это нормально, что блог использует jquery.js?ver=1.12.4? Разве он не должен использовать новейшую версию 3.x? Только тогда я смогу безопасно удалить jQuery Migrate?

Pikk Pikk
5 июл. 2017 г. 21:12:07

jQuery версии 1.12.4 поставляется с WordPress по умолчанию. Вы можете использовать последнюю версию скрипта, которая сейчас версия 3, просто убедитесь, что вызвали deregister_script('jquery'), что также включает удаление скрипта миграции, а затем снова подключите последнюю версию скрипта для использования.

Den Isahac Den Isahac
5 июл. 2017 г. 21:22:46

Спасибо. Удалил migrate и взял jquery 3 от google. И, кажется, всё работает нормально

Pikk Pikk
5 июл. 2017 г. 21:31:22
1

Да, вы можете удалить JQuery Migrate, чтобы ускорить загрузку вашей страницы на стороне клиента.

Что такое jQuery Migrate?

Модуль jQuery Migrate (jquery-migrate.min.js) — это библиотека JavaScript, которая позволяет сохранить совместимость вашего jQuery-кода, разработанного для версий jQuery старше 1.9. jQuery Migrate также помогает разработчикам обнаруживать устаревший код, который больше не поддерживается новейшими версиями jQuery, и адаптировать его для работы с версиями jQuery 1.9 и выше.

PHP-код для отключения jQuery Migrate в WordPress

Этот код я использую для своих клиентов, и он является правильным способом удаления jQuery Migrate на стороне клиента без влияния на другие компоненты в админ-панели WordPress. Скопируйте этот код и вставьте его в файл functions.php, чтобы удалить JQuery:

/**
 * Отключаем jQuery Migrate в WordPress.
 *
 * @author Guy Dumais.
 * @link https://en.guydumais.digital/disable-jquery-migrate-in-wordpress/
 */
add_filter( 'wp_default_scripts', $af = static function( &$scripts) {
    if(!is_admin()) {
        $scripts->remove( 'jquery');
        $scripts->add( 'jquery', false, array( 'jquery-core' ), '1.12.4' );
    }    
}, PHP_INT_MAX );
unset( $af );

Надеюсь, это поможет!

26 апр. 2018 г. 15:02:57
Комментарии

Или вы можете просто подключить jquery-core, который не включает jquery-migrate: wp_enqueue_script('jquery-core');

Toni Joe Toni Joe
28 нояб. 2020 г. 14:38:08