The only way around the pop-up blocker is to open the window during the click event handler. You could implement a kind of "sleep" routine by running a loop until the timeout is reached, so that all the processing is still happening in the click handler (see example here:
http://www.ozzu.com/programming-forum/javascript-sleep-function-t66049.html)
. However be aware that on most browsers you have a pretty short amount of time until the browser's "this script is not responding" message appears because it thinks the script is stuck in an unresponsive loop (which it essentially is).