2013-10-30 76 views
0

我遇到了麻煩。 在fancybox窗口中更改密碼後,我正確地打開了一個「密碼錯誤」Iframe(如果用戶輸入了錯誤的密碼)。 問題出現在這裏:關閉「密碼錯誤」Iframe後,我想重新打開「密碼更改」Iframe。在對有效性檢查密碼後的「密碼錯誤」的iframe我使用:舊的關閉後打開一個新的fancybox

<link rel="stylesheet" href="/includes/fancybox/source/jquery.fancybox.css?v=2.1.5" type="text/css" media="screen" /> 
<script type="text/javascript" src="/includes/fancybox/source/jquery.fancybox.pack.js?v=2.1.5"></script> 


    <script type="text/javascript"> 
    parent.$.fancybox.open([ 
     { 
      href: '/pages/messages/wrong_password.asp' 
     }, 
    ], { 
     maxWidth: 350, 
     maxHeight: 65, 
     fitToView: false, 
     width: 350, 
     height: 65, 
     padding: 0, 
     scrolling: 'auto', 
     preload: true, 
     type: 'iframe', 
     closeBtn: false, 
     openEffect: 'elastic', 
     closeEffect: 'fade', 
     helpers: { 
      overlay: { 
       css: { 
        'background': 'rgba(255,255,255, 0.80)' 
       } 
      } 
     }, 
     afterClose: function() { 
      $('.pass').fancybox.open; 
     } 
    }); 
</script> 

我的fancybox INIT是:

$(document).ready(function() { 

    $('.fancybox').fancybox({ 
     openEffect: 'elastic', 
     fitToView: true, 
     closeEffect: 'fade', 
     padding: 5, 
     helpers: { 
      overlay: { 
       css: { 
        'background': 'rgba(227,227,227, 0.90)' 
       } 
      } 
     } 
    }); 


    $('.pass').fancybox({ 
     maxWidth: 560, 
     maxHeight: 300, 
     fitToView: false, 
     type: 'iframe', 
     width: 560, 
     padding: 0, 
     height: 300, 
     autoSize: true, 
     autoResize: true, 
     autoScale: true, 
     closeClick: false, 
     closeBtn: false, 
     openEffect: 'fade', 
     openSpeed: 'fast', 
     closeEffect: 'fade', 
     closeSpeed: 'fast', 
     scrolling: 'auto', 
     helpers: { 
      overlay: { 
       css: { 
        'background': 'rgba(227,227,227, 0.90)' 
       } 
      } 
     } 
    }); 
});  

在最初打開「更改密碼」之一的.pass類通過鏈接,但我無法再通過href頁面。

非常感謝您的幫助。

+1

它會幫助U:http://jsfiddle.net/Aphjq/2/ – Ashish

回答

0
The .pass class in the one that originally 
opens the "Change Password" through a link 

如果.pass是鏈接的類,並假設鏈接都有自己href,那麼你只需要觸發上選擇一個click

所以不是這個

afterClose: function(){ 
    $('.pass').fancybox.open; // this will never work for sure 
} 

試試這個

afterClose: function(){ 
    $('.pass').trigger("click"); 
}