Как разместить JavaScript скрипт перед закрывающим тегом </body>?

Как можно изменить скрипт, чтобы избежать добавления в него кода в случае использования компонента bitrix:iblock.element.add.form с включенным AJAX?
  • 29 июля 2024 г. 11:03
Ответы на вопрос 2
Для размещения JavaScript скрипта перед закрывающим тегом </body> можно использовать следующий код в шаблоне сайта:

```html
<!DOCTYPE html>
<html>
<head>
    <title>Мой сайт</title>
</head>
<body>
    <!-- Содержимое страницы -->
    
    <!-- Ваш JavaScript код -->
    
    <script>
        // Ваш JavaScript код здесь
    </script>
</body>
</html>
```

Чтобы изменить скрипт и избежать добавления в него кода в случае использования компонента bitrix:iblock.element.add.form с включенным AJAX, можно добавить проверку на наличие данного компонента на странице. Например, можно использовать следующий подход:

```html
<script>
    // Проверка на наличие компонента bitrix:iblock.element.add.form в DOM-дереве страницы
    if (!document.querySelector('.bxiblockelementaddform')) {
        // Ваш JavaScript код здесь
    }
</script>
```

Таким образом, скрипт будет выполнен только в том случае, если компонент bitrix:iblock.element.add.form не будет найден на странице, что позволит избежать добавления лишнего кода в случае его использования.
А зачем на столько сложно? 
Почему не вставить в файл footer.php вашего шаблона сайта строчку
<script></script>
или через api битрикс
use Bitrix\Main\Page\Asset;
Asset::getInstance()->addJs(SITE_TEMPLATE_PATH . "/js/fix.js");
Похожие вопросы