Esperando a que se cargue la ventana del niño para completar

¿Hay un gancho fácil para detectar que una ventana abierta por un script ha terminado de cargarse? Básicamente, quiero el equivalente de laonLoad() Enganche, pero no puedo configurarlo directamente; suponga que el documento hijo es un hecho y no puedo poner ningún código propio en él.

Por ejemplo, digamos que tengo los siguientes dos archivos:

parent.html:

<html>
  <head>
    <title>Parent</title>
  </head>
  <script type="text/javascript">
    var w;
    function loadChild() {
      w = window.open();
      w.location.href="child.html";
      // block until child has finished loading... how?
      w.doSomething();
    } 
  </script>
</html>
<body>
  I am a parent window. <a href="javascript:loadChild()">Click me</a>.
</body>

child.html:

<html>
  <head>
    <title>Child</title>
  </head>
  <script type="text/javascript">
    function doSomething() {
      alert("Hi there");
    }
  </script>
</html>
<body>
  I am a child window
</body>

Desde que configuro location.href no es bloqueante,w.doSomething() aún no está definido y eldoSomething() Llama explota. ¿Cómo puedo detectar que el niño ha terminado de cargar?

Respuestas a la pregunta(3)

Su respuesta a la pregunta