Как определить, когда fancybox открыт?

Я должен знать, что fancybox был, открывают это, чтобы позволить или отрицать, что другая функция запускается.

Сборка - в функциях Fancybox как 'onStart' или 'onClosed' не работает.

Я говорю о версии 1.3.0 RC2

9
задан Ax. 24 January 2010 в 20:25
поделиться

2 ответа

Версия, которая, по-видимому, не соответствует документации; Я посмотрел на источник и увидел, что имена вариантов были разными онлайн-документами. Я только что проверил следующее с 1.3RC2:

$(document).ready(function() {

    function myStartFunction() { alert('fancy box opened'); }

    $("a#inline").fancybox({
        'onStart': myStartFunction
    });  
});

Вариант, который вы ищете, это «OnStart» - оповещение в MyStartFunction с каждым раз, когда я открываю коробку. Я не уверен, что когда они изменили опцию, но вы можете посмотреть на источник любой версии, которую вы используете внизу, и посмотрите, что вариант должен вызывать.

Редактировать

Я просто дважды проверил на V1.2.5 - версия, которую я использую - и обратные вызовы действительно называются разными. CallbackonStart работает с 1.25, но, как я уже сказал, а не 1.3

10
ответ дан 4 December 2019 в 06:19
поделиться

Не понимаю, что вы имеете в виду под встроенными функциями. В Fancybox есть обратные вызовы, которые вызывают пользовательские функции (которые вы должны сделать сами). Например:

function myClose()
{
    alert('close');
}

function myStart()
{
    alert('start');
}

$("a#single_image").fancybox({
     'callbackOnClose': myClose,
     'callbackOnStart': myStart
// etc, etc..
}); 

Или вы можете проверить fancy_content div, чтобы посмотреть, есть ли что-нибудь внутри. (если есть, то фэнсибокс открыт).

if ( $('#fancy_content:empty').length > 0 )
{
  // Is empty
}
3
ответ дан 4 December 2019 в 06:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: