2013-03-01 28 views
11

Ben Fancybox yok etmeye çalışıyorum. Ben documentation bunu yapmak için herhangi bir yöntem bulamadım. İlklendirildikten sonra nasıl yok edilir?Fancybox nasıl yok edilir?

Bu işe yaramazsa:

$("a").unbind('fancybox').unbind('click'); 

Test kodu: http://jsfiddle.net/martinba/yy3cw/2/

Ben güncel sürümünü 2.1.4 kullanın.

+0

sen neyi yok demek oluyor? Bunların hepsini saklamak ister misin? – Manoj

+0

geri standart davranışına ihtiyaç: Bağlantıya ... tıklayıp tarayıcı açacaktır. Sadece bir javascript olmadığı gibi, Fancybox iç camları yok. – Martin

cevap

13

: geliştirici bu kadar belirgin olmayan neden yaptığını

$(document).unbind('click.fb-start'); 

rağmen, bilmiyorum.

http://jsfiddle.net/dfsq/yy3cw/16/

+0

iyi çalışacak gibi görünüyor. Teşekkürler! – Martin

+0

Sayfanın üzerinde, birden çok fantezi kutusu örneğim varsa, resim galerisi gibi - , yalnızca belirli görüntüleri değil, her şeyi çözmenin bir yolu var mı? – webdevbyjoss

+0

@Passer by, kodunuzla yeni bir yanıt göndermenizi öneririz. – dfsq

2

çağırmak deneyin:

.unbind('click.fb') Fancybox bağını kaldırmak için.

gibi: Eğer document den fb-start ad altında olayları unbind zorunda Fancybox unbind için

$('.group').unbind('click.fb') 
+0

Maalesef, işe yaramıyor. İşte burada: init butonuna tıklayın ve sonra imha http://jsfiddle.net/martinba/yy3cw/11/. "FancyDevil" hala orada. – Martin

+0

Bu benim için çalıştı. 'Click.fb-start' yapmadı. Sanırım FB versiyonuna bağlı. – igasparetto

+0

Bu çalışma görünüyor FancyBox 1,34 – Hutch

0

burada söz edildiği gibi önceki: $(document).unbind('click.fb-start'); Ama aynı zamanda fancybox init çağrısı için bu seçeneği eklemek istiyorsunuz olabilir: çalıştırarak live:false

1

Her fantezi kutu kurtarabilir miyim:

$(document).unbind('click.fb-start'); 

Veya belirli bir seçiciyi açmak gerekirse, aşağıdakileri geri alabilirsiniz:

var selector = 'a.my-fancy-box'; 
selector = selector + ":not('.fancybox-item, .fancybox-nav')"; 
$(document).undelegate(selector, 'click.fb-start'); 

Veya alternatif:

// Bind 
$('a.my-fancy-box').fancybox({live: false}); 

// Unbind 
$('a.my-fancy-box').unbind('click.fb'); 
İlgili konular