diff --git a/js/reveal.js b/js/reveal.js
index 70c782caa16711bdef57f4b6c15a8d7bb6214dc7..074fd9d588ca767e97415a2aa795c2d6854df5eb 100644
--- a/js/reveal.js
+++ b/js/reveal.js
@@ -1916,11 +1916,11 @@ var Reveal = (function(){
 
 				toArray( fragments ).forEach( function( element ) {
 					element.classList.add( 'visible' );
-
-					// Notify subscribers of the change
-					dispatchEvent( 'fragmentshown', { fragment: element } );
 				} );
 
+				// Notify subscribers of the change
+				dispatchEvent( 'fragmentshown', { fragment: fragments[0], fragments: fragments } );
+
 				updateControls();
 				return true;
 			}
@@ -1950,11 +1950,11 @@ var Reveal = (function(){
 
 				toArray( fragments ).forEach( function( f ) {
 					f.classList.remove( 'visible' );
-
-					// Notify subscribers of the change
-					dispatchEvent( 'fragmenthidden', { fragment: f } );
 				} );
 
+				// Notify subscribers of the change
+				dispatchEvent( 'fragmenthidden', { fragment: fragments[0], fragments: fragments } );
+
 				updateControls();
 				return true;
 			}