Регистрация jQuery по событию

Битрикс обновление jquery (регистрация новой версии)
3 комментария
Битрикс по умолчанию юзает версию jquery 1.8, чтобы заменить ее на любую другую нужно произвести ее перерегистрацию.
Для этого в файле Init.php добавляется следующий обработчик:

AddEventHandler("main", "OnPageStart", "registerJqueryHandler");
function registerJqueryHandler() 
{
      //Hack: when init first extension - bitrix register standart extensions
      $emptyHack = [
         'css' => "",
         'skip_core' => true,
      ];
      \CJSCore::RegisterExt('emptyHack', $emptyHack);
      \CJSCore::Init('emptyHack');
 
 $arJSLib = [
      'js' => '/bitrix/js/main/jquery/jquery-1.12.4.min.js', 
    'skip_core' => true
 ];
 \CJSCore::RegisterExt('jquery', $arJSLib);
 
} 

 

emptyHack — для обхода некого битрикс бага касательно первого CJSCore::Init();


/bitrix/js/main/jquery/jquery-1.12.4.min.js — это путь до jquery файла с новой версией загруженного на сервер или с googleapis;

далее в шаблоне сайта или в каком либо компоненте:

 

<?
    CJSCore::Init('jquery'); 
?>

 

и больше не надо нигде никаких:

$APPLICATION->AddHeadScript(SITE_TEMPLATE_PATH . '/js/jquery-1.12.4.min.js');

 

или

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

Метаданные статьи

Идентификатор статьи:
26
Дата добавления:
Рейтинг :