Добавить элемент если он отсутсвует на странице js

Рейтинг: 1Ответов: 1Опубликовано: 07.02.2023

Есть слайдер, для работы работы которого необходим slider.min.js . Так как слайдер используется не на всех страницах, я не стала подключать его в шаблон сайта, а подключаю его непосредственно в коде шаблона этого слайдера.

Если на странице более одного слайдера, тогда slider.min.js подключается несколько раз, в зависимости от общего количества слайдеров.

Я хотела создать условие js при, котором slider.min.js подключается только один раз. То есть, если .src = 'js/slider.min.js'; уже есть на странице, то не подключать.

Как добавить скрипт через js я разобралась, но как добавить условие для дублирующихся .src = 'js/slider.min.js'; не знаю. Благодарю за помощь

<script>
    document.getElementsByTagName('body')[0]
      .appendChild(
        document.createElement('script')
      )
      .src = 'js/slider.min.js';
</script>

Ответы

▲ 1

Если есть доступ к коду слайдера:

В случае если вы можете изменить скрипт слайдера, можно в нём добавить глобальную переменную и затем проверять её значение:
В слайдере:
window.isSliderImpoted = true
В скрипте:
if(!window.isSliderImpoted) // подключаем else // не подключаем

Если нет доступа к коду слайдера:

const slider = document.querySelector('[src="slider.min.js"]')
if (!slider) // Подключаем
else // Не подключаем