Який 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 робить певні дії в плаваючому фреймі на основі у заданому списку дозволених дій. 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/uk/document.location
@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>
Примітка. Команда click () повинна надходити після оголошення посилання.
window.top.location.href = 'index.html';
Це перенаправить головне вікно на індексну сторінку. Дякую
Ми повинні використовувати window.top.location.href для перенаправлення батьківського вікна від дії iframe.
Перенаправити iframe у батьківському вікні на iframe в тому ж батьківському:
window.parent.document.getElementById("content").src = "content.aspx?id=12";
IFrame, теж. Оскільки прийнята відповідь стосується верхнього вікна, пропоную вам трохи змінити своє запитання.