function nextSlide() {
if (buildNextItem()) {
return;
}
if (curSlide < slideEls.length - 1) {
curSlide++;
updateSlides();
}
}
function prevSlide() {
if (curSlide > 0) {
curSlide--;
updateSlides();
}
}
function updateSlides() {
for (var i = 0; i < slideEls.length; i++) {
switch (i) {
case curSlide - 2:
updateSlideClass(i, 'far-past');
break;
case curSlide - 1:
updateSlideClass(i, 'past');
break;
case curSlide:
updateSlideClass(i, 'current');
break;
case curSlide + 1:
updateSlideClass(i, 'next');
break;
case curSlide + 2:
updateSlideClass(i, 'far-next');
break;
default:
updateSlideClass(i);
break;
}
}
triggerLeaveEvent(curSlide - 1);
triggerEnterEvent(curSlide);
window.setTimeout(function() {
// Hide after the slide
disableSlideFrames(curSlide - 2);
}, 301);
enableSlideFrames(curSlide - 1);
enableSlideFrames(curSlide + 2);
if (isChromeVoxActive()) {
speakAndSyncToNode(slideEls[curSlide]);
}
updateHash();
}
}
这些似乎是驱动滑动翻转的主要功能。没有理由您不能将其扩展为curSlideX
并且curSlideY
可以updateSlide
横向或垂直移动,具体取决于两者中的哪一个发生了变化。
在您拥有的 html 中
<section id=slides>
<atricle></article>
<atricle></article>
<atricle></article>
</section>
文章被赋予动态类以确定它们是大的,还是变小并偏向一边。
您将通过更多部分添加更多行,并让更新更改它们的类,就像文章类移动以适应选择了哪个文章和行一样。