2013-02-27 62 views
0

我試圖在jQuery追加的元素上觸發Fancybox,但沒有成功。在jQuery追加的元素上觸發Fancybox

這裏的fancybox燒製代碼:

jQuery(document).ready(function() { 
    $("a#what_is_prehung").fancybox(); 
    $("a.prehungHelp").fancybox(); 
}); 

有了這個代碼,我追加的HTML標記:

jQuery(document).ready(function($) { 
    $('.valueDoorSlabonly').append('<div id="prehungHelp"><a class="prehungHelp" href="/template/images/door-slab-only.jpg"></a></div>'); 
}); 

我需要火的fancybox與類= 「prehungHelp」 元素。在我們的網站上,我們使用的是jQuery v1.6.4,由於其他腳本僅適用於此版本,因此無法更新它。

http://www.doorsandbeyond.com/avanti-modern-interior-door-black-apricot/這是它應該出現的頁面,在帶有「* Pre-hanging:」部分的門選項的窗體中,單選按鈕應該「?」標記出現與鏈接到描述此選項的模態窗口(fancybox)。

我試過這個答案和一些其他幾個資源,但沒有成功: how to bind fancybox to dynamic added element? Appending dynamically generated html using jQuery does not play well with Fancybox

我感謝所有幫助。 感謝 謝里夫

+0

你只追加a.pregungHelp元素到DOM一次?在你打電話給你的fancybox設置代碼之前,你確定他們被追加嗎? – 2013-02-27 15:20:25

+0

順便說一句,在使用ID時不需要在選擇器上預先加上標籤 - 無論如何它們應該是唯一的。 – BenM 2013-02-27 15:23:25

+0

是的,他們追加並出現在頁面上,但鏈接沒有被Fancybox揪住。它只是在新窗口中打開圖像。 – Sharif 2013-02-27 15:24:53

回答

0

嘗試調用的fancybox你追加「prehungHelp」元素之後用jQuery

jQuery(document).ready(function($) { 
    $('.valueDoorSlabonly').append('<div id="prehungHelp"><a class="prehungHelp" href="/template/images/door-slab-only.jpg"></a></div>'); 
    $("a.prehungHelp").fancybox(); 
}); 
+0

Ooo))它的工作原理!它非常簡單。非常感謝!我真的很感激。我根本沒有想到在追加後調用它。 – Sharif 2013-02-27 15:36:36

+0

如果它有效,我很高興。 只要記得投票了我的答案,如果你發現它有用。 – Guern 2013-02-27 16:57:40