Magnific酒店我彈出幻燈片使用一個小的形式與「開始幻燈片放映」按鈕,並在所需的時間間隔的輸入。幻燈片放映對象已基本下面的代碼:
var slideshow = {
interval: 4,
intervalTimer: null,
currImgNo: 0,
insertController: function(parentElement) {
// DOM code to create form html
$(slideShowStartButton).on('click', function(e){
$('.popup-parent-container').magnificPopup('open', slideshow.currImgNo);
if ($.magnificPopup.instance.index + 1
< $.magnificPopup.instance.items.length) {
$.magnificPopup.instance.next();
slideshow.currImgNo++;
} else {
$('.popup-parent-container').magnificPopup('close');
}
}, slideshow.interval * 1000);
});
}
$(document).ready(function() {
slideshow.insertController(/* This code depends on the slide show controller html */);
});
幻燈片放映屬性currImgNo是用來與過去popuped圖像進入幻燈片並防止循環。
彈出Magnific酒店了在打開和關閉事件處理多餘的線條:
$('.popup-parent-container').magnificPopup({
// ...
callbacks: {
open: function() {
slideshow.currImgNo = this.index;
},
close: function() {
if (slideshow.intervalTimer) {
clearInterval(slideshow.intervalTimer);
}
}
}
});
這工作得很好,至少對某些WebKit和我測試Gecko瀏覽的。
我的版本額外啓動全屏模式,但這需要更多的代碼跨瀏覽器工作。
看起來不錯,不起作用。我認爲,從關閉'setInterval('。開始我覺得不能抓住它,不管我有多少小事,我都不能接受它。謝謝你的幫助Dmitry – henry
@henry是的,它缺少我已經添加的'function()'。上面的代碼現在應該可以工作,但另一個問題是如何在下一個/上一個按鈕被點擊時停止幻燈片顯示? – JohnnyQ