Как я могу открыть ссылку в новой вкладке, если у нее target = _blank? - PullRequest
1 голос
/ 27 мая 2020

Я пытаюсь открыть ссылку в новой вкладке только в том случае, если эта ссылка имеет target=_blank, например,

<a href="https://google.com" target="_blank">Google</a>

По какой-то причине target=_blank не работает в Bootstrap 4.5 navbar Поэтому я пытаюсь использовать jQuery, чтобы заставить его работать, так как некоторые ссылки имеют атрибут target=_blank:

$('a.navigation-title').click(function () { 
    location.href = this.href; 
    $(this).find('a').attr('target','_blank'); 
    window.open(this.href, '_blank'); 
  });

Это сценарий, который я использовал, но у него нет эффект.

Ответы [ 2 ]

0 голосов
/ 27 мая 2020

var elements = document.querySelectorAll('a[target=_blank]');
for (var index = 0; index < elements.length; index++) {
  const element = elements[index];
  element.addEventListener('click', function (e) {
    e.preventDefault();
    var href = element.getAttribute('href');
    if (href) {
      window.open(href, '_blank');
    }
    return false;
  });
}
<a href="https://google.com" target="_blank">Google</a>
0 голосов
/ 27 мая 2020

Измените код на

<a href="https://google.com" class="navigation-title" target="_blank">Google</a>

Я добавил новый класс к тегу 'a' для запуска события клика для jquery

$('.navigation-title').click(function () { 
    var url = $(this).attr('href'); 
    window.open(url , '_blank'); 
  });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...