2010-08-27 39 views
0

我只是想出瞭如何使用Facebox。我可以在Facebox中打開隱藏的div,但是如何獲取它以轉儲當前div並加載另一個,而不關閉彈出窗口?如果用戶點擊彈出窗口中的鏈接,我希望Facebox彈出窗口加載另一個div(同時轉儲前一個div)。我已經試過這樣的事情:如何加載另一個div而facebox彈出仍然打開?

<script type="text/javascript"> 
     jQuery(document).ready(function($) { 
      $('a[rel*=facebox]').facebox({}) 
     }) 
</script> 

<a href="#div1" rel="facebox">Div1</a> 
<div id="div1" style="display:none;"> 
    <a href="#div2" rel="facebox">Load the other div</a> 
</div> 
<div id="div2" style="display:none;"> 
    <p>Other div</p> 
</div> 

我知道這不是這麼簡單。我已經試過尋找答案,但沒有骰子。這甚至有可能嗎?當談到Javascript時,我是一個完整的noob,所以請耐心等待。

回答

2

我找到答案了。顯然,你需要將它綁定到一個mouseclick事件並執行遞歸。以下是我的做法:

<script type="text/javascript"> 
    function find_hidden(){ 
     $('.infinite') 
     .unbind('click') 
     .bind('click', function() { 
      var glink = $(this).attr('href'); 
      jQuery.facebox({div: glink}); 
      find_hidden(); 
     }); 
    } 
</script> 

我找到了答案here

0

從通源略讀,我認爲你可以傳遞一個字符串,像這樣:

$.facebox('<div>test</div>'); 
+0

我會嘗試,看看這是否正常工作。謝謝。 – 2010-08-27 02:00:00

+0

這不完全是我正在尋找的答案。上面的代碼只是在頁面加載時加載div。我很確定這是因爲我的問題,所以我現在要修改它,這樣會更詳細。 – 2010-08-27 02:32:35

0

試試這個:

jQuery("#facebox_overlay").click();jQuery.facebox({ div: '#your-new-div-id' }); 
相關問題