@Minusator

Почему не срабатывает открытие модального окна?

Есть модальное окно, которое открывается по ссылке:

<a href="#" class="sf-open-modal" data-src="#my-modal">
Открыть модальное окно
</a>

Если добавить внутрь тега <a> другие теги, к примеру <p>, то модальное окно перестает открываться:

<a href="#" class="sf-open-modal" data-src="#my-modal">
<p>Открыть модальное окно</p>
</a>


JS
global.SimpleModal = function() {
        var modal_triggers = document.querySelectorAll(".sf-open-modal"),
            modal_closers = document.querySelectorAll(".sf-modal-closer");

        if (modal_triggers.length) {
            for (var m = 0; m < modal_triggers.length; m++) {
                var trigger = modal_triggers[m];

                if (trigger) {
                    trigger.onclick = function(e) {
                        e.preventDefault();

                        var src = e.target.getAttribute("data-src");

                        if (src) {
                            var targetModal = document.querySelector(src);

                            targetModal.classList.add("active");
                        }
                    }
                }
            }
        }

        if (modal_closers.length) {
            for (var c = 0; c < modal_closers.length; c++) {
                var closer = modal_closers[c];

                if (closer) {
                    closer.onclick = function(e) {
                        e.preventDefault();
                        e.target.closest(".sf-modal").classList.remove("active");
                    }
                }
            }
        }

        document.onclick = function(e) {
            if (e.target.classList.contains("sf-modal-wrapper")) {
                e.target.parentNode.classList.remove("active");
            }
        }
    };

    SimpleModal();

Как сделать так, чтобы модальное окно срабатывало при оборачивании любых тегов <p>, <span> <div>?
  • Вопрос задан
  • 75 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы