В проводнике предотвратить по умолчанию не работает - PullRequest
0 голосов
/ 21 февраля 2019

После нажатия на элемент li я хочу сделать что-то вместо перенаправления.Этот код прекрасно работает во всех современных браузерах, но не в проводнике.В т. Е. После щелчка он перенаправит меня.

Что мне добавить в код, если я хочу ту же функцию в проводнике?

HTML

<li class="activate-modal">
  <a href="/test.com">Some Text</a>
</li>

JS / jQuery

$(document).ready(function()
{
  showModal();
}

function showModal() {
  $(document).on('click', '[class*="activate-modal"]', openModal);
}

function openModal(e) {
  e.preventDefault ? e.preventDefault() : e.returnValue = false;
  e.stopPropagation ? e.stopPropagation() : e.cancelBubble = true;

  //some other code
}

Ответы [ 2 ]

0 голосов
/ 21 февраля 2019

Вы должны прикрепить обработчик событий к link вместо li и удалить href url из ссылки, чтобы прекратить перенаправление

   <li>
      <a href="#" class="someClass">Some Text</a>
    </li>


    $(document).ready(function () {
      $(document).on('click', '.someClass', openModal);
    })

    function openModal(e) {
     e.preventDefault ? e.preventDefault() : e.returnValue = false;
      e.stopPropagation ? e.stopPropagation() : e.cancelBubble = true;

        alert("show Model")
      //some other code
    }
0 голосов
/ 21 февраля 2019

Вы можете установить данные-цели и данные-переключатели

<li class="someClass">
<a data-toggle="modal" data-target="#showModal" href="#">Some Text</a>
</li>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...