2013-06-04 50 views
12

我在我的項目中使用了放大彈出窗口。要關閉jQuery的彈出窗口,我正在使用 $('。mfp-close')。click();它正在工作,但我需要以另一種方式關閉。 Plz幫助我,如果有其他方式。在此先感謝如何通過jquery關閉放大彈出窗口

+0

請分享一下你的代碼 – Grevling

回答

0

如果你有開放的pop up那麼它會返回一個magnific object, 使用object可以callclose method

嘗試像,

var mgObj=$('your-selecter').magnificPopup({ 
    // you options 
}); 

// code to close pop up on clicking a button 
$(document).on('click','button',function(){ 
    if(mgObj) 
    { 
     mgObj.close(); 
    } 
}); 
+0

羅漢嗨,感謝烏拉圭回合答覆。 當我使用它時,它會拋出mgObj.close()不是函數。 你能爲我提供解決方案嗎? – Sanjay

34

試試這個:

var magnificPopup = $.magnificPopup.instance; 
// save instance in magnificPopup variable 
magnificPopup.close(); 
// Close popup that is currently opened 
+0

哇!我用它和它的工作.... 感謝您的回覆。 – Sanjay

+0

沒問題,隨時接受這個作爲正確答案:) – Bobby5193

+0

你是怎麼做到的?我剛剛在var上獲得null maginificPopup – altore

29

只需使用$.magnificPopup.close()

6

看看這裏http://dimsemenov.com/plugins/magnific-popup/documentation.html#api

這些都是一些可以關閉這個彈出方式up:

var magnificPopup = $.magnificPopup.instance; // save instance in magnificPopup variable 
magnificPopup.close(); // Close popup that is currently opened 

$.magnificPopup.close();

$('your-selector').magnificPopup('close');

對我來說,只有第三個有效工作。

+0

技術#3是我唯一能夠正確工作的彈出框,而不是所有彈出框。謝謝,Lem! –

3

爲我的作品中只有一個是:

$jQ('#close_popup').on('click',function(){              
    $jQ.magnificPopup.proto.close.call(this); 
});