Usando JQuery para abrir una ventana emergente e imprimir

Hace un tiempo creé un plugin de lightbox usando jQuery que cargaría una url especificada en un enlace en una lightbox. El código es realmente simple:

$('.readmore').each(function(i){
    $(this).popup();
});

y el enlace se vería así:

<a class='readmore' href='view-details.php?Id=11'>TJ Kirchner</a>

El complemento también podría aceptar argumentos para ancho, alto, una url diferente y más datos para pasar.

El problema que estoy enfrentando ahora es imprimir la caja de luz. Lo configuré para que la caja de luz tenga un botón de impresión en la parte superior de la caja. Ese enlace abriría una nueva ventana e imprimiría esa ventana. Todo esto está siendo controlado por el complemento lightbox. Así es como se ve ese código:

$('.printBtn').bind('click',function() {
    var url = options.url + ( ( options.url.indexOf('?') < 0 && options.data != "" ) ? '?' : '&' ) + options.data;
    var thePopup = window.open( url, "Member Listing", "menubar=0,location=0,height=700,width=700" );
    thePopup.print();
});

El problema es que el script no parece estar esperando hasta que se cargue la ventana. Quiere imprimir el momento en que aparece la ventana. Como resultado, si hago clic en "cancelar" en el cuadro de diálogo de impresión, aparecerá una y otra vez hasta que se cargue la ventana. La primera vez que intenté imprimir recibí una página en blanco. Eso podría deberse a que la ventana no terminó de cargar.

Necesito encontrar una manera de alterar el bloque de código anterior para esperar hasta que se cargue la ventana y luego imprimir. Siento que debería haber una manera fácil de hacer esto, pero aún no la he encontrado. O eso, o necesito encontrar una mejor manera de abrir una ventana emergente e imprimir desde el script de lightbox en la ventana principal, sin alternar el código de la página web en la ventana emergente.

Respuestas a la pregunta(3)

Su respuesta a la pregunta