Цепочка Javascript для ожидания возврата всплывающего окна

как я могу заставить цепочку функций выполняться последовательно, если одна из них предполагает ожидание всплывающего окна?

В приведенной ниже функции authBegin я открываю окно, которое по завершении возвращается к функции authBegin.

Но цепочка этого, конечно же, не ждет. Как мне заставить его ждать, пока не вернется окно?

am.authUnlessCurrent().authBegin().collectData();

var authModule=function(){

  this.authUnlessCurrent=function(){
    alert("checks auth");
  };

  this.authBegin=function(){
    window.oauth_success = function(userInfo) {
      popupWin.close();
      return this;
    }
    window.oauth_failure = function() {
      popupWin.close();
      return true;
    }
    popupWin = window.open('/auth/twitter');
  };

  this.collectData=function(){
    alert("collect data");
    return this;
  };

}
7
задан ming yeow 6 December 2010 в 18:01
поделиться