2012-09-06 85 views
-1

我爲一個簡單的圖像庫使用FancyBox,但我想從圖像的SRC屬性(即鏈接的子級)自動設置鏈接HREF屬性。這是我的HTML:從子圖像src動態生成FancyBox鏈接href

<ul id="gallery"> 
    <li><a href="#" rel="group" class="fancybox"><img src="images/01.jpg" alt="" class="picBorder" /></a></li> 
    <li><a href="#" rel="group" class="fancybox"><img src="images/02.jpg" alt="" class="picBorder" /></a></li> 
    <li><a href="#" rel="group" class="fancybox"><img src="images/03.jpg" alt="" class="picBorder" /></a></li> 
</ul> 

一點的閱讀中,我認爲我能做到這一點使用beforeLoad回調,像這樣的東西之後:

$(document).ready(function() { 
    $(".fancybox").fancybox({ 
     beforeLoad : function(){ 
      var url= $(this.element).children("img").attr("src"); 
      this.href = url 
     } 
    }); 
}); 

唉,這是行不通的。我希望在Fancybox中執行此操作,而不是在頁面加載時動態創建鏈接(如果可能)。

非常感謝您的任何建議!

編輯: 澄清,也有出現&的fancybox的模態窗口顯示與正常沒有控制檯錯誤「的請求的內容無法加載,請稍後再試。」錯誤...這將表明問題出在我如何遍歷代碼。

回答

0

由於我無法直接解決這個問題,我選擇刪除加載頁面時生成的鏈接&。這是我使用的代碼,以防萬一:

$(document).ready(function() { 
    $('ul#gallery li').each(function() { 
     var url = $(this).children("img").attr("src"); 
     $(this).children("img").wrap('<a class="fancybox" rel="group" href="' + url + '" />'); 
    }); 
    $(".fancybox").fancybox(); 
});