Какой JavaScript мне нужно использовать, чтобы перенаправить родительское окно из iframe?
Я хочу, чтобы они щелкали по гиперссылке, которая, используя JavaScript или любой другой метод, перенаправляла родительское окно на новый URL.
Какой JavaScript мне нужно использовать, чтобы перенаправить родительское окно из iframe?
Я хочу, чтобы они щелкали по гиперссылке, которая, используя JavaScript или любой другой метод, перенаправляла родительское окно на новый URL.
Ответы:
window.top.location.href = "http://www.example.com";
Как указывалось ранее, будет перенаправлен родительский iframe.
sandbox
" - developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe. Этот sandbox
атрибут не позволяет javascript выполнять определенные действия в рамках iframe. в заданном белом списке разрешенных действий. allow-top-navigation
Свойство является одним из действий , которые могут позволить в белом списке, что позволяет этот код работе. Если sandbox
атрибут отсутствует, все действия разрешены. Если это присутствует и пустая строка, все действия запрещены.
Я обнаружил, что <a href="..." target="_top">link</a>
работает тоже
window.top.location.href = "http://example.com";
window.top
относится к объекту окна страницы в верхней части иерархии фреймов.
или альтернативой является следующее (используя объект документа)
parent.document.location.href = "http://example.com";
parent.location.href = ...
. developer.mozilla.org/en/document.location
target="_parent"
отлично работал для меня. легко и без проблем!
@MIP - это правильно, но в более новых версиях Safari вам потребуется добавить атрибут песочницы (HTML5), чтобы предоставить перенаправляющий доступ к iFrame. Есть несколько конкретных значений, которые можно добавить с пробелом между ними.
Ссылка (вам нужно будет прокрутить): https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe
Пример:
<iframe sandbox="allow-top-navigation" src="http://google.com/"></iframe>
sandbox
атрибут включает дополнительный набор ограничений для содержимого в <iframe>
. Значение sandbox
свойства снимает определенные ограничения. Так что следите за использованием этой функции. w3schools.com/tags/att_iframe_sandbox.asp
Если вы хотите перенаправить на другой домен без необходимости делать что-либо, вы можете воспользоваться ссылкой со свойством:
target="_parent"
как сказано ранее, а затем используйте:
document.getElementById('link').click();
чтобы он автоматически перенаправлял.
Пример:
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<a id="link" target="_parent" href="outsideDomain.html"></a>
<script type="text/javascript">
document.getElementById('link').click();
</script>
</body>
</html>
Примечание. Команда javascript click () должна появиться после объявления ссылки.
window.top.location.href = 'index.html';
Это перенаправит главное окно на страницу индекса. Спасибо
Мы должны использовать window.top.location.href, чтобы перенаправить родительское окно из действия iframe.
URL демо :
Перенаправить iframe в родительское окно с помощью iframe того же родителя:
window.parent.document.getElementById("content").src = "content.aspx?id=12";
IFrame
, тоже. Поскольку принятый ответ относится к верхнему окну, я предлагаю вам немного изменить свой вопрос.