如何在需要时运行jQuery函数?

时间:2015-04-16 15:19:45

标签: javascript jquery html

我遇到了一个问题,我的网站上运行了一个响应滑块,该滑块已添加到外部.js文件中。我遇到一个问题,主页上没有弹出模式,因为该页面正在寻找仅包含在几个子页面上的滑块。

Chrome控制台显示以下错误:  Uncaught TypeError: undefined is not a function

这是我目前的代码:

$('.my-carousel').slick({
    speed: 330,
    slidesToShow: 4,
});

5 个答案:

答案 0 :(得分:8)

您可以检查插件是否已经加载(它检查是否存在给定的jQuery函数):

if ($().slick) {
 // .. your code
}

if ($.fn.slick) {
 // .. your code
}

答案 1 :(得分:1)

您可以在调用函数之前检查轮播是否存在:

var myCarousel = $('.my-carousel');
if (typeof myCarousel.slick !== 'undefined') {
  myCarousel.slick({speed: 330, slidesToShow: 4});
}

答案 2 :(得分:0)

您可以使用length来检查它是否存在,例如:

if ($('.my-element').length) { //do stuff }

答案 3 :(得分:0)

只有在未应用时才可以应用 slick,执行如下操作:

$('.my-carousel').not('.slick-initialized').slick({
  // Your settings here.
});

答案 4 :(得分:-1)

if($('.my-carousel').length){
   $('.my-carousel').slick({
      speed: 330,
      slidesToShow: 4,
   });
}