Задать вопрос
@pwnography

Как сделать, чтобы ссылки в iframe открывались на моем сайте, а не на сайте, что внутри iframe?

Здравствуйте, вставляю на свою страницу iframe, внутри другой сайт. Если просто тыкать внутри фрейма по ссылкам того сайта то все ок, но если внутри айфрейма тыкнуть правой кнопкой мыши по ссылке "Открыть в новой вкладке", то данная ссылка откроется не на моем сайте внутри айфрейма, а просто откроет страницу того сайта.
Так вот как сделать так, чтобы при "Открыть в новой вкладке" данная ссылка открывалась на моем сайте?
  • Вопрос задан
  • 2150 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
sim3x
@sim3x
Никак
Ответ написан
Комментировать
@alegrans
Это принципиально невозможно, так как указанная на "чужом" сайте ссылка "не знает", что ей надо открыться в Вашем сайте, а те же самые, но "айфремовские" ссылки сидят в коде Вашего сайта (через iframe) и только поэтому открываются внутри него.
Ответ написан
Комментировать
SynCap
@SynCap
Делаю интернет с 1998 года
Способ номер раз:

var moi_site = 'http://bla-bla-bla.com/';
$('#iframe_id a').each( function (idx) {
    var link $(this).attr('href');
    if (!link.match(/^https?:\/\//))
        $(this).attr('href', moi_site + $(this).attr('href'));
});


2й Способ. Не уверен, что сработает как надо, в разных браузерах тэг BASE как-то странно себя ведет, поэтому редко кем используется.

var moi_site = 'https://example.com/';
$('#iframe_id head').append('<BASE href="'+moi_site+'">');
Ответ написан
Ваш ответ на вопрос

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

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