Получить текущий URL из IFRAME


есть ли простой способ получить текущий URL из iframe?

зритель будет проходить через несколько сайтов. Я предполагаю, что я буду использовать что-то в javascript.

3 69

3 ответа:

по соображениям безопасности вы можете получить url-адрес только до тех пор, пока содержимое iframe и ссылающийся javascript обслуживаются из одного домена. Покуда это правда, что-то вроде этого будет работать:

document.getElementById("iframe_id").contentWindow.location.href

если эти два домена не совпадают, вы столкнетесь с ограничениями безопасности сценариев межсайтовых ссылок.

см. также ответы на аналогичный вопрос.

Если ваш iframe из другого домена, (кросс-домен), другие ответы не помогут вам... вам просто нужно будет использовать это:

var currentUrl = document.referrer;

и-вот вам основной url!

надеюсь, что это поможет некоторым, как в вашем случае, Я страдал с той же самой проблемой, и просто использовал localstorage для обмена данными между родительским окном и iframe. Так что в Родительском окне вы можете:

localStorage.setItem("url", myUrl);

и в коде, где iframe источник просто получить эти данные из localstorage:

localStorage.getItem('url');

сэкономил мне много времени. Насколько я вижу, единственным условием является доступ к коду родительской страницы. Надеюсь, это кому-то поможет.