隨着fancyBox 2,我如何避免在包含該圖庫中多個不同圖像的多個鏈接的頁面上的圖庫中重疊縮略圖幫助圖像?fancyBox在頁面包含多個鏈接到一個圖像時複製縮圖幫助圖像
活生生的例子:http://publications.iodp.org/proceedings/349/101/349_101.html
見 「導言」,第一句話, 「圖形F1,F2」 爲樣本的鏈接。
資產:jQuery的1.8.3,Twitter的引導2.2.2,2.1.5的fancybox
樣本鏈接代碼:
<a class="fancybox-xtitle Link" rel="fancybox-xtitle" data-title-id="F1title" href="figures/01_F01.png">F1,</a> <a class="fancybox-xtitle Link" rel="fancybox-xtitle" data-title-id="F2title" href="figures/01_F02.png">F2</a>
JavaScript示例:
$(".fancybox-xtitle")
.attr('rel', 'gallery')
.fancybox({
openEffect : 'none',
closeEffect : 'none',
prevEffect : 'none',
nextEffect : 'none',
closeBtn : false,
arrows : false,
padding : [15, 15, 55, 15],
minWidth : 300,
maxWidth : 1200,
helpers : {
thumbs : {
width : 50,
height : 50
},
title : {
type : 'inside',
position : 'top'
},
buttons : {},
},
beforeLoad: function() {
var el, id = $(this.element).data('title-id');
if (id) {
el = $('#' + id);
if (el.length) {
this.title = el.html();
}
}
}
});
我沒有在任何地方看到這個具體問題,我希望答案對任何人都有用ho希望使用fancyBox在頁面上創建一個包含多個標註的圖庫。在編寫此問題時,我還查看了「可能已經有答案的問題」列表,但未找到答案。我已經尋找解決方案,在過去三週文章:1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16
背景資料:
頁面可以具有從1至500 +數字(影像加上字幕)。
有三種方式,其中數字是在頁面上引用:
從文本(例如「 F1第一張圖說明」)在圖形列表在固定導航到右每個圖都被引用一次,rel =「navfigures」;沒有縮略圖助手重複問題。
從第一次提到文字中的圖形後的文本中的灰色方框()中的圖像 - 再次引用每個圖形,rel =「thumb」;沒有縮略圖助手重複問題。
從頁面文本中的文本(例如「F1」,「F14」等)可能包含一個或多個鏈接到這些圖像中的任何一個(例如圖F1可能會在文本中調出從1到x次);縮略圖助手爲每個被引用的圖形按照它們被調出的順序創建縮略圖。
前兩種方式不涉及多個引用任何一個數字,因此不會導致縮略圖重複。然而,第三種方法涉及多個參考,因此會導致重複。例如,包含調出圖F1,F2,F3,F3,F3,F1,F4的文本的頁面將導致縮略圖助手顯示F1,F2,F3,F3,F3,F1,F4的庫只有F1,F2,F3,F4。
使用beforeLoad回調(每fancyBox documentation,提示&技巧,2.標題 - 使用元素而不是屬性)從包含HTML中的標題的隱藏div中提取數字標題。
只要每個圖像只有一個鏈接,就像文本中的縮略圖圖像和側面導航中的圖形列表一樣,使用rel屬性定義圖庫效果很好。在鏈接到文本正文中的數字的鏈接上使用rel屬性導致縮略圖的極度重複。
回答時請注意以下幾點:我有使用HTML和CSS的經驗,但使用JavaScript並沒有太多,而幾乎沒有使用jQuery;我儘可能快地進行自我訓練。
男人,@stovroz,你剛剛節省了我的時間噸。你的代碼不適合我,但讓我瞭解我的問題並解決它。謝謝。 – nrvnm 2015-09-05 05:29:47