Как проверить плагин и функции jQuery?

У меня есть плагин на некоторых страницах, но на некоторых других страницах я этого не хочу, поэтому я не ссылался на его файл script.

Как проверить, существуют ли функции плагина перед его использованием.

В моем случае я использую этот плагин: и я использую его следующим образом:

$('#marquee-inner div').marquee('pointer').mouseover(function() {
    $(this).trigger('stop');
}).mouseout(function() {
    $(this).trigger('start');
}).mousemove(function(event) {
    if ($(this).data('drag') == true) {
        this.scrollLeft = $(this).data('scrollX') + ($(this).data('x') - event.clientX);
    }
}).mousedown(function(event) {
    $(this).data('drag', true).data('x', event.clientX).data('scrollX', this.scrollLeft);
}).mouseup(function() {
    $(this).data('drag', false);
});

Я хочу сделать проверку перед вызовом этой функции выделения, если она существует или нет.

Ответ 1

if ($.fn.marquee) {
    // there is some jquery plugin named 'marquee' on your page
}

Ответ 2

Вы также можете это сделать. Позвольте мне взять пример jQuery marquee.

Это хорошо, если вы используете только jQuery.

if($().marquee) {
    // marquee is loaded and available
}

ИЛИ

if($.fn.marquee !== undefined) {
    // marquee is loaded and available
}

Аналогично выше, но безопасен, когда вы используете другие JS-фреймворки Mootools и т.д.

if(jQuery().marquee) {
    // marquee is loaded and available
}

ИЛИ

if(jQuery.fn.marquee !== undefined) {
    // marquee is loaded and available
}

Ответ 3

Чуть лучше:

if ($.isFunction($.fn.marquee)) {
    // ...
}

Может быть, немного перебор, но это обеспечит хотя бы функцию.