“slider.refresh()”无法处理灯光滑块中的点击事件。文档具有此刷新功能,但我收到此错误
未捕获的TypeError:slider.refresh不是函数 在HTMLDivElement。
$(document).ready(function() {
var slider = $(".content-slider").lightSlider({
loop:false,
keyPress:true,
verticalHeight:500,
item:1,
auto:false,
adaptiveHeight: true,
enableTouch: true,
enableDrag: false,
freeMove:true,
});
// Save note show div
$('.save-note').click(function() {
$(this).closest('.col-sm-12').
find('.note-section').removeClass('hide').fadeIn('slow');
slider.refresh();
});
});
提前致谢
答案 0 :(得分:2)
再次声明该滑块将在容器内导致该滑块的新实例。
您需要将滑块的实例保存在窗口范围内的全局变量中:
window.globals = {
gallery: ""
};
初始化滑块后,将其保存到创建的globals对象中:
var slider = $("#lightSlider").lightSlider();
window.globals = {
gallery: slider
};
然后,当您需要刷新滑块时,可以这样称呼它:
globals.gallery.refresh();
与其余可用方法相同,例如:
globals.gallery.goToSlide(1);
答案 1 :(得分:0)
您必须再次声明滑块var:
// Save note show div
$('.save-note').click(function() {
$(this).closest('.col-sm-12').
find('.note-section').removeClass('hide').fadeIn('slow');
var slider = $(".content-slider").lightSlider(); // declare var again
slider.refresh();
});