2012-05-11 51 views
1

我在我的網站中實現了nyroModal jQuery插件。 我已經設置了一個配置的Windows nyroModal JavaScript文件:NyroModal - 關閉並重定向

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

    bgColor: '#000', 

    width: 680, 

    height: 500 

}); 

現在,打開nyroModal窗口需要一個鏈接,我可以關閉nyroModal窗口,然後重定向到一個特定的頁面。

我創建了一個親密和重定向鏈接:

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

然而,nyroModal關閉之前被重定向窗口 - 這看起來並不好看。 我想實現回調,但我不知道如何執行此操作。

+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