Tengo un script de greasemonkey que abre un marco flotante que contiene un formulario de un subdominio diferente como página principal.
me gustaría actualizar la página principal cuando el iframe refresca después del envío del formulario
estoy en el punto en que puedo ejecutar una función cuando se actualice el iframe, pero no puedo conseguir que la función de afectar a los padres documento.
Entiendo que esto se debe a los modelos de seguridad del navegador, y he estado leyendo sobre el uso de postMessage para comunicarme entre las dos ventanas, pero parece que no puedo encontrar la manera de enviar una llamada de recarga al padre con él.
Cualquier consejo sobre la manera de hacer eso sería muy útil
graciasutilizando postmensaje para actualizar el documento principal de iframe
18
A
Respuesta
47
Uso:
window.parent.postMessage('Hello Parent Frame!', '*');
Nota el '*' indica "cualquier origen". Debe reemplazar esto con el origen objetivo si es posible.
En el marco padre que necesita:
window.addEventListener('message', receiveMessage, false);
function receiveMessage(evt)
{
if (evt.origin === 'http://my.iframe.org')
{
alert("got message: "+evt.data);
}
}
Reemplazar "my.iframe.org" con el origen de su marco flotante. (Puede omitir la verificación de origen, solo tenga mucho cuidado con lo que hace con los datos que obtiene).
Cuestiones relacionadas
- 1. Cómo actualizar la página principal de iframe después de un envío en el iframe?
- 2. Obtener el documento de marco flotante, desde JavaScript en el documento principal
- 3. Actualizar un iframe
- 4. Cómo actualizar el iframe de tinymce?
- 5. Búsqueda de iFrame anidado utilizando Selenium 2
- 6. Actualizar iFrame (problema de caché)
- 7. jQuery no admite el evento postmensaje?
- 8. ¿Cómo actualizar el documento incrustado en mangosta?
- 9. Response.Redirect() en iFrame, ventana principal de redirección
- 10. Obtener el documento de los padres del iFrame
- 11. Fancy Box: cómo actualizar la página principal al cerrar la ventana flotante iframe?
- 12. Documento de ventana principal de referencia
- 13. Validación utilizando JAXB y Stax para calcular el documento XML
- 14. ¿Cómo puedo actualizar la ventana padre de un iframe?
- 15. Cómo recuperar el nodo principal utilizando cElementTree?
- 16. Cómo actualizar XML utilizando XPath y Java
- 17. Establecer la variable en la ventana principal desde iframe
- 18. CouchDB - Código de activación al crear o actualizar el documento
- 19. Cómo encontrar el elemento principal utilizando javascript
- 20. Cómo eliminar el elemento principal utilizando javascript ...!
- 21. Obtener el nombre del formulario de iframe utilizando AutoIt
- 22. Crear documento XML utilizando nodeList
- 23. Actualizar un nuevo campo al documento existente
- 24. Buscar posición del nodo principal utilizando xpath
- 25. ¿Cómo puedo evitar que un iframe acceda al marco principal?
- 26. Obtener el src actual de un Iframe utilizando JQuery
- 27. ¿Cómo cambio dinámicamente el contenido de un iframe utilizando jquery?
- 28. ¿Cómo puedo determinar el tipo de mimo de un documento utilizando solo javascript?
- 29. Python de documento utilizando Eclipse/Pydev
- 30. ¿Cuál es la razón principal para actualizar a Eclipse Juno?
Tenga en cuenta que IE no admite 'addEventListener' así que use jQuery bind o algo –
Si tiene varios iframes dentro de cada uno, puede reemplazar _parent_ con _top_ para llegar a la página más alta: 'window.top.postMessage (' ¡Hola Parent Frame! ',' * '); ' –