slides three or more steps away from current are now hidden

This commit is contained in:
Hakim El Hattab 2011-12-22 22:41:19 -08:00
parent 01000e1478
commit f6dc531298

View File

@ -283,15 +283,22 @@ var Reveal = (function(){
slides[index].setAttribute('class', 'present'); slides[index].setAttribute('class', 'present');
// Any element previous to index is given the 'past' class for( var i = 0; i < slides.length; i++ ) {
slides.slice(0, index).map(function(element){ var slide = slides[i];
element.setAttribute('class', 'past');
});
// Optimization; hide all slides that are three or more steps
// away from the present slide
slide.style.display = Math.abs( index - i ) > 3 ? 'none' : 'block';
if( i < index ) {
// Any element previous to index is given the 'past' class
slide.setAttribute('class', 'past');
}
else if( i > index ) {
// Any element subsequent to index is given the 'future' class // Any element subsequent to index is given the 'future' class
slides.slice(index + 1).map(function(element){ slide.setAttribute('class', 'future');
element.setAttribute('class', 'future'); }
}); }
} }
else { else {
// Since there are no slides we can't be anywhere beyond the // Since there are no slides we can't be anywhere beyond the