[英]How to stop my html presentation at the last slide?
I'm making a html presentation.我正在制作 html 演示文稿。 It had 15 slides.
它有 15 张幻灯片。 I have it all working but when I get to the last slide you can continue pressing the left arrow key(the key press that goes to the next slide) to go to slides that I'm not using or even expecting to be there.
我已经完成了所有工作,但是当我到达最后一张幻灯片时,您可以继续按左箭头键(转到下一张幻灯片的按键)到 go 到我不使用甚至不希望出现的幻灯片。 How can I stop the transition from slide to slide at the last slide.
如何在最后一张幻灯片上停止从幻灯片到幻灯片的过渡。
this is all my javascript这就是我的全部 javascript
var Slides = {
currentSlide: 0,
totalSlides: '',
slideWidth: '',
translateAmount: 0,
container: $("#slides"),
init: function(totalSlides) {
var each;
if(!totalSlides) throw new Error('Please pass the number of slides');
Slides.totalSlides = totalSlides;
Slides.loadContent();
each = Slides.container.children('div');
Slides.slideWidth = each.width() + (parseInt(each.css('margin-right'), 10));
Slides.keyPress();
},
loadContent: function() {
Slides.container.hide();
for (var i = 0; i < Slides.totalSlides; i++) {
$('<div id="#slide-' +i+ '"></div>')
.load('slides/' +i+ '.html')
.appendTo(Slides.container);
}
Slides.container.show();
},
keyPress: function() {
$(document.body).keydown(function(e) {
if(e.keyCode === 39 || e.keyCode === 37) {
e.preventDefault();
(e.keyCode === 39)?Slides.next():Slides.prev();
}
});
},
next: function() {
Slides.translateAmount -= Slides.slideWidth;
Slides.updateHash(++Slides.currentSlide);
Slides.animate();
},
prev: function() {
if(Slides.translateAmount === 0) return;
Slides.translateAmount += Slides.slideWidth;
Slides.updateHash(--Slides.currentSlide);
Slides.animate();
},
animate: function() {
Slides.container
.children()
.css('-webkit-transform', 'translateX(' +Slides.translateAmount+ 'px)');
},
updateHash: function() {
location.hash = '#slide-' +Slides.currentSlide;
}
}
Slides.init(15);
You can check if currentSlide
is equal to 14 (assuming slides start from 0).您可以检查
currentSlide
是否等于 14(假设幻灯片从 0 开始)。 If its true, just return from the next
function如果是真的,就从
next
function 返回
next: function() {
if (currentSlide === 14)
return;
Slides.translateAmount -= Slides.slideWidth;
Slides.updateHash(++Slides.currentSlide);
Slides.animate();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.