2012-03-23 8 views
5

Tengo un div con un iframe y el iframe carga una página de otro sitio (dominio cruzado). Cuando la página se carga en firefox, funciona bien y muestra la página con el iframe en el div. Sin embargo, en Chrome, redirige automáticamente a la URL iframe cuando se carga la página. ¿Alguna idea de por qué está sucediendo esto y si es posible hacer lo que estoy tratando de hacer en Chrome?¿Por qué Chrome está redireccionando a URL de onframe onload?

Notas: No estoy tratando de hacer ninguna comunicación entre dominios, solo quiero permitir que los usuarios accedan al otro sitio desde una página en mi sitio. Esto también ocurre en Safari, así que tal vez sea un juego web.

+0

¿Sucede en cada url? ¿Tal vez este sitio en particular tiene un código de "escape de iframe"? – hamczu

+0

No, no lo hace. Sí, me di cuenta de que, poco después de publicar esto, ciertas URL de otros dominios funcionan, por lo que debe ser eso. No estoy seguro de cómo se hace eso, así que no sabía qué buscar, pero puedo resolverlo. – paul

+0

Responda a sus dos preguntas: http://stackoverflow.com/questions/4002712/is-it-possible-to-prevent-iframe-content-from-escaping-in-main-page-using-js – hamczu

Respuesta

8

El iframe de espacio aislado puede ser una solución a su problema. Es compatible tanto con Safari como con Chrome, y no afectará a Firefox . Se puede utilizar de este modo:

<iframe sandbox="allow-forms allow-same-origin allow-scripts" src="http://stackoverflow.com"></iframe> 

Por no añadir allow-top-navigation hay que están impidiendo un iframe para redirigir la página entera. Puede leer más al respecto en W3C.org.


partir de la versión 17, Firefox también soporta iframe de espacio aislado.

+0

resolver mi problema bellamente, muchas gracias! – Vimvq1987

+0

Gracias, hombre, me salvaste el día :) –

Cuestiones relacionadas