2010-10-13 38 views
1

我在jquery中使用fancybox lightbox插件。它掛接到錨標籤使得下列拉起所鏈接與相對=「example_group」引用的其他圖像的圖像:新創建的錨點元素觸發事件

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("a[rel=example_group]").fancybox(); 
    }); 
</script> 

<body> 
    <a rel="example_group" href="./example/7_b.jpg"><img alt="" src="./example/7_s.jpg" /></a> 
    <a rel="example_group" href="./example/9_b.jpg"><img alt="" src="./example/9_s.jpg" /></a> 
</body> 

我想更多的圖像添加到彈出的畫廊,但我不希望在鏈接被打中之前將它們包含在頁面中。所以現在,兩個圖像正在顯示,然後鏈接。例如,我想在第三個圖像中掛鉤,而不在其中顯式顯示它。

我試圖執行以下操作:

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("a[rel=example_group]").fancybox(); 

     $("<a rel='example_group' href='./example/8_b.jpg'><img src='./example/8_s.jpg' /></a>").appendTo("body"); 
    }); 
</script> 

這將鉤的第三圖像到庫,但也顯示在體內的圖像。所以,我想與appendTo部分同樣的事情:

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("a[rel=example_group]").fancybox(); 

     $("<a rel='example_group' href='./example/8_b.jpg'><img src='./example/8_s.jpg' /></a>"); 
    }); 
</script> 

但這種添加元素似乎不與相對組相關聯,只有兩個圖像鏈接在一起。

如何添加新的錨點元素並將其掛鉤到.fancybox調用而不必將引用附加到正文?我認爲這個問題對於特定的fancybox代碼是足夠獨立的。這似乎只是一個足夠的jQuery專業知識問題。

回答

0

我對.fancybox()瞭解得不是很瞭解,但這裏有個想法可供您嘗試。

將您不希望在頁面上顯示的圖像放在隱藏的容器中。他們不會在網頁上看到,但我會想象他們會在fancybox。

HTML

<body> 
    <div id='hiddenContainer' style='display:none;'></div> 

    <a rel="example_group" href="./example/7_b.jpg"><img alt="" src="./example/7_s.jpg" /></a> 
    <a rel="example_group" href="./example/9_b.jpg"><img alt="" src="./example/9_s.jpg" /></a> 
</body> 

在jQuery中,圖像附加到該容器。

$(document).ready(function() { 
    $("<a rel='example_group' href='./example/8_b.jpg'><img src='./example/8_s.jpg' /></a>") 
      .appendTo("#hiddenContainer"); 
    $("a[rel=example_group]").fancybox(); 
}); 
相關問題