← К заметкам

Заметки

Как подключить свой JS к карточке сделки в коробке

Для коробочной доработки JavaScript можно подключить только на странице сделки. Но URL страницы — это лишь ограничение области загрузки, а не гарантия, что вся разметка карточки уже появилась.

$path = parse_url($_SERVER['REQUEST_URI'] ?? '', PHP_URL_PATH) ?: '';

if (preg_match('#^/crm/deal/details/[0-9]+/#', $path)) {
    \Bitrix\Main\Page\Asset::getInstance()->addJs('/local/js/deal-card/custom.js');
}

Фрагмент выполняется в контексте пролога, до вывода подключаемых ресурсов. Для собственного компонента удобнее зарегистрировать UI extension и загрузить его рядом с компонентом.

Внутри JS дождитесь нужного состояния карточки. Слайдеры и динамическое открытие могут менять момент инициализации. Если задача решается штатной вкладкой приложения, placement обычно даёт более устойчивую точку интеграции.