don't overwrite existing classes on slides (closes #23)

This commit is contained in:
Hakim El Hattab 2012-03-24 12:27:25 -04:00
parent cd66a6574d
commit b72bee3219
1 changed files with 10 additions and 5 deletions

View File

@ -428,8 +428,6 @@ var Reveal = (function(){
if( slides.length ) {
// Enforce max and minimum index bounds
index = Math.max(Math.min(index, slides.length - 1), 0);
slides[index].className = 'present';
for( var i = 0; i < slides.length; i++ ) {
var slide = slides[i];
@ -440,20 +438,27 @@ var Reveal = (function(){
slide.style.display = Math.abs( index - i ) > 3 ? 'none' : 'block';
}
slides[i].classList.remove( 'past' );
slides[i].classList.remove( 'present' );
slides[i].classList.remove( 'future' );
if( i < index ) {
// Any element previous to index is given the 'past' class
slide.className = 'past';
slides[i].classList.add( 'past' );
}
else if( i > index ) {
// Any element subsequent to index is given the 'future' class
slide.className = 'future';
slides[i].classList.add( 'future' );
}
// If this element contains vertical slides
if( slide.querySelector( 'section' ) ) {
slide.classList.add( 'stack' );
slides[i].classList.add( 'stack' );
}
}
// Mark the current slide as present
slides[index].classList.add( 'present' );
}
else {
// Since there are no slides we can't be anywhere beyond the