点击元素重启Glide.js

时间:2015-11-12 23:39:46

标签: javascript jquery css slider glidejs

我有一个带滑动滑块的灯箱。 Glide.js已经启动。我想点击我指定的元素重新启动滑块。关闭灯箱时,我想暂停滑块。我可以看到这可以通过API实现,但无法让它工作......

我的滑块设置

var slider_alt=$("#glide--alt").glide({
    type:"slideshow",
    autoplay:2500, 
    animationDuration:2000,
    hoverpause:false
}),
slider_api=slider_alt.data("glide_api");

我尝试重启滑块的jQuery

popUp_openButton.click(function(){
    slider_alt.jump(1);
    slider_alt.play();
});

popUp_closeButton.click(function(){ 
    slider_alt.pause();
}); 

2 个答案:

答案 0 :(得分:1)

使用.refresh()

popUp_closeButton.click(function(){ 
   slider_alt.refresh();
});

答案 1 :(得分:1)

这是我最后的工作代码。打开模态窗口时,将重新计算滑块并从幻灯片1开始。关闭时,将停止清除所有对象和绑定。

//Setting up slider
var slider_alt=$("#glide--alt").glide({
    type:"slideshow",
    autoplay:2500, 
    animationDuration:2000,
    hoverpause:false
}),
slider_alt_api=slider_alt.data("glide_api");


var popUp_openButton    = $('.popUp__button--open'),
popUp_closeButton   = $('.popUp__button--close');

popUp_openButton.click(function(){
    slider_alt_api.refresh();
    slider_alt_api.jump('=1');
});

popUp_closeButton.click(function(){ 
    slider_alt_api.destroy();
});     

$(document).keyup(function(e){
    if(e.keyCode === 27) {
        slider_alt_api.destroy();
    }  
});