소스 검색

rewrite fragment index attributes to leave no gaps between fragments

Hakim El Hattab 11 년 전
부모
커밋
2faae3d95b
2개의 변경된 파일15개의 추가작업 그리고 13개의 파일을 삭제
  1. 14 12
      js/reveal.js
  2. 1 1
      js/reveal.min.js

+ 14 - 12
js/reveal.js

@@ -1045,16 +1045,14 @@ var Reveal = (function(){
 
 		var a = toArray( fragments );
 
-		a.forEach( function( el, idx ) {
-			if( !el.hasAttribute( 'data-fragment-index' ) ) {
-				el.setAttribute( 'data-fragment-index', idx );
-			}
-		} );
-
 		a.sort( function( l, r ) {
 			return l.getAttribute( 'data-fragment-index' ) - r.getAttribute( 'data-fragment-index');
 		} );
 
+		a.forEach( function( el, idx ) {
+			el.setAttribute( 'data-fragment-index', idx );
+		} );
+
 		return a;
 
 	}
@@ -2309,14 +2307,12 @@ var Reveal = (function(){
 
 				toArray( fragments ).forEach( function( element, i ) {
 
-					// Hidden fragments
-					if( i > index ) {
-						if( element.classList.contains( 'visible' ) ) fragmentsHidden.push( element );
-						element.classList.remove( 'visible' );
-						element.classList.remove( 'current-fragment' );
+					if( element.hasAttribute( 'data-fragment-index' ) ) {
+						i = parseInt( element.getAttribute( 'data-fragment-index' ), 10 );
 					}
+
 					// Visible fragments
-					else {
+					if( i <= index ) {
 						if( !element.classList.contains( 'visible' ) ) fragmentsShown.push( element );
 						element.classList.add( 'visible' );
 						element.classList.remove( 'current-fragment' );
@@ -2325,6 +2321,12 @@ var Reveal = (function(){
 							element.classList.add( 'current-fragment' );
 						}
 					}
+					// Hidden fragments
+					else {
+						if( element.classList.contains( 'visible' ) ) fragmentsHidden.push( element );
+						element.classList.remove( 'visible' );
+						element.classList.remove( 'current-fragment' );
+					}
 
 
 				} );

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 1
js/reveal.min.js


이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.