diff --git a/js/reveal.js b/js/reveal.js index 0f409770..ed9db7ba 100644 --- a/js/reveal.js +++ b/js/reveal.js @@ -2682,8 +2682,7 @@ function syncSlide( slide ) { syncBackground( slide ); - - sortFragments( slide.querySelectorAll( '.fragment' ) ); + syncFragments( slide ); updateBackground(); updateNotes(); @@ -2692,6 +2691,19 @@ } + /** + * Formats the fragments on the given slide so that they have + * valid indices. Call this if fragments are changed in the DOM + * after reveal.js has already initialized. + * + * @param {HTMLElement} slide + */ + function syncFragments( slide ) { + + sortFragments( slide.querySelectorAll( '.fragment' ) ); + + } + /** * Resets all vertical slides so that only the first * is visible. @@ -5297,8 +5309,10 @@ initialize: initialize, configure: configure, + sync: sync, syncSlide: syncSlide, + syncFragments: syncFragments, // Navigation methods slide: slide,