Staram się zrobić pewne nieścisłości zlecone przez klienta w stylizacji różnych fancyboxów.

Wygląda na to, że nie potrafię znaleźć sposobu, aby odróżnić, które fancybox jest otwarte, za pomocą klasy, identyfikatora lub czegokolwiek.

Czy jest na to sposób?

4
Joren 2 marzec 2012, 02:13

2 odpowiedzi

Najlepsza odpowiedź

Fancybox 2 ma opcję wrapCSS, która pozwala dodać niestandardową klasę do lightboxa w celu stylizacji.

Tak jak to:

$(".fancybox").fancybox();

$(".photo").fancybox({
    wrapCSS : 'photo-lightbox-class'
});

$(".video").fancybox({
    wrapCSS : 'video-lightbox-class'
});
12
Dominic 15 kwiecień 2012, 09:38

Możesz to osiągnąć za pomocą oddzielnych wywołań funkcji fancybox() i parametrów onX. Na przykład:

$('.ProductThumbImage a').fancybox({
    padding: 30,
    margin: 0,
    autoScale: true,
    onStart: function() {
        $('#fancybox-content').css('padding', '8px');
    },
    onClosed: function() {
        $('#fancybox-content').css('padding', '0');
    }
});

Najwyraźniej ten sam fancybox jest używany we wszystkich instancjach, więc możesz po prostu dodawać/usuwać do niego style lub klasy na podstawie tego, który link został kliknięty.

0
Joren 2 marzec 2012, 04:14