未捕获的TypeError:无法读取未定义的属性'tween' - Masterslider.js

时间:2016-04-29 05:03:50

标签: javascript jquery slider

我正在使用Master Slider,单页中有三个滑块。 我也在使用Fullpage.js

var slider = new MasterSlider();
slider.setup('masterslider', {
  width: 300,
  height: 300,
});

slider.control('lightbox');

slider.control('slideinfo', {
  insertTo: '#staff-info2'
});    
$(document).ready(function() {        
  $("a[rel^='prettyPhoto']").prettyPhoto();    
});

var slider1 = new MasterSlider();
slider1.setup('masterslider1', {
  loop: true,
  width: 220,
  height: 420,

});

slider1.control('arrows');
slider1.control('slideinfo', {
  insertTo: '#staff-info'
});

var slider2 = new MasterSlider();
slider2.setup('masterslider2', {
  loop:true,
  width:240,
  height:240,
  view:'flow'
});
//  slider.control('arrows');
slider2.control('slideinfo', {
  insertTo: '#staff-info1'
});

这些是对这三个滑块的调用,每个东西都工作得更好,但是未定义的'tween'有控制台错误 这是在masterslider.js文件中定义错误的行

    p.__show = function(ele){
    ele.appendTo(this.$element).css('opacity','0');
    CTween.fadeIn(ele , MSSlideInfo.fadeDuratation );
    if(ele[0].tween)ele[0].tween.stop(true);
    this.current_ele = ele;
};

2 个答案:

答案 0 :(得分:0)

ele是0长度数组。 ele [0]未定义。您需要更改行

  

如果(ELE [0] .tween)ELE [0] .tween.stop(真);

  

if(ele.length> 0&& ele [0] .tween)ele [0] .tween.stop(true);

答案 1 :(得分:0)

sliderinfo在幻灯片中查找带有ms-info类的元素,然后在div (staff-info1);

中显示该元素

您可以删除slideinfo信息配置或将ms-info类添加到每张幻灯片中。 slider2.control('slideinfo',{   insertTo:'#staff-info1' });

实施例 ...

  <h4 class="ms-layer ms-info stext7" style="left: 130px; top: 470px;" data-type="text" data-duration="900" data-delay="2500" data-ease="easeOutExpo" data-effect="bottom(40)">
 this is a slide.
                </h4>