¿Qué JavaScript necesito usar para redirigir una ventana principal desde un iframe?
Quiero que hagan clic en un hipervínculo que, mediante JavaScript o cualquier otro método, redirija la ventana principal a una nueva URL.
¿Qué JavaScript necesito usar para redirigir una ventana principal desde un iframe?
Quiero que hagan clic en un hipervínculo que, mediante JavaScript o cualquier otro método, redirija la ventana principal a una nueva URL.
Respuestas:
window.top.location.href = "http://www.example.com";
Como se indicó anteriormente, redirigirá el iframe principal.
sandbox
" - developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe El sandbox
atributo impide que JavaScript realice ciertas acciones dentro de un iframe basado en una lista blanca dada de acciones permitidas. La allow-top-navigation
propiedad es una de las acciones que puede habilitar en la lista blanca, lo que permite que este código funcione. Si el sandbox
atributo es abscent, se permiten todas las acciones. Si está presente y una cadena vacía, se deniegan todas las acciones.
Descubrí que eso <a href="..." target="_top">link</a>
también funciona
window.top.location.href = "http://example.com";
window.top
se refiere al objeto de ventana de la página en la parte superior de la jerarquía de marcos.
o una alternativa es la siguiente (usando el objeto del documento)
parent.document.location.href = "http://example.com";
parent.location.href = ...
. developer.mozilla.org/en/document.location
target="_parent"
funcionó muy bien para mí fácil y sin problemas!
@MIP tiene razón, pero con las versiones más nuevas de Safari, deberá agregar el atributo sandbox (HTML5) para dar acceso de redireccionamiento al iFrame. Hay algunos valores específicos que se pueden agregar con un espacio entre ellos.
Referencia (deberá desplazarse): https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe
Ex:
<iframe sandbox="allow-top-navigation" src="http://google.com/"></iframe>
sandbox
atributo habilita un conjunto adicional de restricciones para el contenido en <iframe>
. El valor de la sandbox
propiedad elimina restricciones particulares. Así que ten cuidado con el uso de esta función. w3schools.com/tags/att_iframe_sandbox.asp
Si desea redirigir a otro dominio sin que el usuario tenga que hacer nada, puede usar un enlace con la propiedad:
target="_parent"
como se dijo anteriormente, y luego use:
document.getElementById('link').click();
para que se redirija automáticamente.
Ejemplo:
<!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>
Nota: El comando click () de JavaScript debe aparecer después de que declare el enlace.
Intenta usar
window.parent.window.location.href = 'http://google.com'
parent.location = 'url'
window.top.location.href = 'index.html';
Esto redirigirá la ventana principal a la página de índice. Gracias
Tenemos que usar window.top.location.href para redirigir la ventana principal desde una acción de iframe.
Redireccionar iframe en la ventana principal por iframe en el mismo padre:
window.parent.document.getElementById("content").src = "content.aspx?id=12";
IFrame
. Como la respuesta aceptada se dirige a la ventana superior , le sugiero que cambie su pregunta un poco.