2012-05-11 9 views
1

私は自分のウェブサイトにnyroModal jQueryプラグインを実装しました。NyroModal - 閉じるとリダイレクト

$("a.nyroModal").nyroModal({ 

    bgColor: '#000', 

    width: 680, 

    height: 500 

}); 

が今、開かれたnyroModalウィンドウは、私がnyroModalウィンドウを閉じ、その後、特定のページにリダイレクトすることができるリンクが必要になります。 私はnyroModalのWindowsを設定するJavaScriptファイルを設定しています。 - 素敵に見えないnyroModalがクローズされる前に

<a onclick="parent.$.nyroModalRemove(); window.parent.location.href = 'user/login'; 
return false;" href="#">log in</a> 

しかし、ウィンドウがリダイレクトされます。

は私が近いとリダイレクトリンクを作成しました。 コールバックを実装したいのですが、これを行う方法がわかりません。

+0

私はあなたがバージョン1.6.xを使用していると思いますか? – macgyver

答えて

1

のような、あなたのonclickから呼び出す関数を作成します。

<a onclick="nyroModalRedirect('user/login');" href="#">log in</a> 

その後.close()関数を呼び出し、その関数を作成し、リダイレクトを呼び出す前にタイムアウトを実行します:

function nyroModalRedirect(url) { 
    // Initialize timeout for hovering over group to load child districts when moving a school 
    var timeout = null; 
    var clear = function() { 
     if (timeout) { 
      clearTimeout(timeout); 
      timeout = null; 
     } 
    } 

    // Close modal (this is pulling the 'topmost' modal instance, but if you only have one, like my login form, it works a charm :) 
    $.nmTop().close(); 
    clear(); 
    // Start timeout after closing modal 
    timeout = setTimeout(function() { 
     // Redirect to passed URL after timeout occurs 
     window.location.href = url; 
    }, 500); 
} 

お楽しみください:)

+0

ありがとうございました... – Lasse

関連する問題