Иза за html_replace ломается Яндекс Карта

из за плагина html_replace у которого код:
<?php
if ($modx->context->get('key') != 'mgr') {
    $output = &$modx->resource->_output;
    $output = preg_replace('|\s+|', ' ', $output);
}
и событие OnWebPagePrerender

Ломается код яндекс карты
<div id="map_container" class="map container-fluid">
        <code><script id="ymap_lazy"
        async
        data-src="<script type="text/javascript" charset="utf-8" async src="https://api-maps.yandex.ru/services/constructor/1.0/js/?um=constructor%3A416cea24f42086697c96d1af16b184198327d44440ecc899ac4563d878ff7b0e&width=500&height=400&lang=ru_RU&scroll=true"></script>"></script>
</div>
</div>
<!-- подгрузка карты яндекс или гугл //-->
    <script type="text/javascript">
        $(document).on('ready', function() {
    let map_container = document.getElementById('map_container');
    let options_map = {
        once: true,//запуск один раз, и удаление наблюдателя сразу
        passive: true,
        capture: true
    };
    map_container.addEventListener('click', start_lazy_map, options_map);
    map_container.addEventListener('mouseover', start_lazy_map, options_map);
    map_container.addEventListener('touchstart', start_lazy_map, options_map);
    map_container.addEventListener('touchmove', start_lazy_map, options_map);

    let map_loaded = false;
    function start_lazy_map() {
        if (!map_loaded) {
            let map_block = document.getElementById('ymap_lazy');
            map_loaded = true;
            map_block.setAttribute('src', map_block.getAttribute('data-src'));
            map_block.removeAttribute('data_src');
            console.log('YMAP LOADED');
        }
    }
     });
</script>
ломается код, карта не работает с плагином html_replace в одну строчку. может быть кто сталкивался как решить?
Игорь
11 июля 2022, 19:52
modx.pro
121
0

Комментарии: 2

Игорь
11 июля 2022, 20:06
0
Все проблему решил. js занес в файл, без конструкций
<script type="text/javascript">
        $(document).on('ready', function() { 
</script>
и заработало
    Артур
    12 июля 2022, 11:01
    0
    В будущем всегда храните js отдельно и проблем не будет.
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    2