2013-04-24 18 views

回答

1

$.fancybox.close()是正確的方法。我不明白的是爲什麼要內onComplete關閉的fancybox ......反正,這個工程:

$(document).ready(function() { 
    $(".fancybox").fancybox({ 
     "onComplete": function() { 
      // close fancybox after 3 seconds 
      setTimeout(function() { 
       $.fancybox.close(); 
      }, 3000) 
     } 
    }); 
}); 

JSFIDDLE

工程與onStart太...查看更新JSFIDDLE

+0

嗨,JFK再次非常感謝您的解決方案。它完美的工作。我測試了1秒,2秒... 9秒的延遲時間,但沒有一個出現工作。我知道這個數字取決於機器。爲什麼你在setTimeout中放置$ .fancybox.close()?關於onComplete,我不必使用它。我只是在測試可以關閉Fancybox的位置,但實際上,我無法通過直接使用。$ fancybox.close()在onStart或onComplete中關閉它。 – curious1 2013-04-26 13:51:20

+0

@ curious1:我使用'setTimeout'來避免在處理程序實際使用它之前調用'$ .fancybox.close()'......也許這是你的問題。 – JFK 2013-04-26 16:05:26

+0

肯尼迪,謝謝你的解釋!問候。 – curious1 2013-04-26 19:17:39