Галерея fancybox передает содержимое элемента в виде массива - PullRequest
0 голосов
/ 11 июля 2011

Я пытаюсь имитировать способ, которым они настраивают предварительный просмотр галереи на своих примерах. у них есть статические изображения, созданные в виде массива внутри вызова fancybox. Я пытался заменить этот массив со скрытым div $("#imgGallery").html(), который имеет тот же HTML, включая кавычки и все остальное. но не в состоянии заставить fancybox подходить.

Как передать содержимое $ ("# imgGallery"). Html () в виде массива в вызов $ .fancybox ().

 $("#manual2").click(function() {
        $.fancybox([
            'http://farm5.static.flickr.com/4044/4286199901_33844563eb.jpg',
            'http://farm3.static.flickr.com/2687/4220681515_cc4f42d6b9.jpg',
            {
                'href'  : 'http://farm5.static.flickr.com/4005/4213562882_851e92f326.jpg',
                'title' : 'Lorem ipsum dolor sit amet, consectetur adipiscing elit'
            }
        ], {
            'padding'           : 0,
            'transitionIn'      : 'none',
            'transitionOut'     : 'none',
            'type'              : 'image',
            'changeFade'        : 0
        });
    });

1 Ответ

0 голосов
/ 03 ноября 2011

Мне удалось сделать это с помощью следующего кода:

$.fancybox(
            [{ href: '/images/title1.png', title: 'title1'},
            { href: '/images/title2.png',title: 'title2'}],
            {
                'padding': 0,
                'transitionIn': 'none',
                'transitionOut': 'none',
                'type': 'image',
                'changeFade': 0,
                'titlePosition': 'inside',
                'titleFormat': formatTitle
            });
    });

function formatTitle(title, currentArray, currentIndex, currentOpts) {
    return '<div></span>' + (title && title.length ? '<b>' + title + '</b>' : '') + '<br/>image ' + (currentIndex + 1) + ' of ' + currentArray.length + '</div>';
}
...