我在某些页面中有一个插件,但在其他一些页面中我不想要它,所以我没有引用它的脚本文件。
如何在使用之前检查插件功能是否存在。
在我的情况下,我正在使用这个插件:我这样使用它:
$('#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);
});
我想要的是在调用此选取框函数之前进行检查(如果存在与否)。
答案 0 :(得分:121)
if ($.fn.marquee) {
// there is some jquery plugin named 'marquee' on your page
}
答案 1 :(得分:17)
您也可以这样做。让我以jQuery marquee为例。
如果你只使用jQuery,这很好。
if($().marquee) {
// marquee is loaded and available
}
OR
if($.fn.marquee !== undefined) {
// marquee is loaded and available
}
与上面类似,但在使用其他JS框架Mootools等时安全。
if(jQuery().marquee) {
// marquee is loaded and available
}
OR
if(jQuery.fn.marquee !== undefined) {
// marquee is loaded and available
}
答案 2 :(得分:4)
稍微好一些:
if ($.isFunction($.fn.marquee)) {
// ...
}
可能有点矫枉过正,但这将确保它至少是一个功能。