diff --git a/README.md b/README.md
index 2d22fb479a1ae0e4ee1ca58225898f3951d5d4d6..6c07a33a0630ef802f628be344da076aeed26cda 100644
--- a/README.md
+++ b/README.md
@@ -179,6 +179,8 @@ Reveal.addEventListener( 'ready', function( event ) {
 
 An 'slidechanged' event is fired each time the slide is changed (regardless of state). The event object holds the index values of the current slide as well as a reference to the previous and current slide HTML nodes.
 
+Some libraries, like MathJax (see [#226](https://github.com/hakimel/reveal.js/issues/226#issuecomment-10261609)), get confused by the transforms and display states of slides. Often times, this can be fixed by calling their update or render function from this callback.
+
 ```javascript
 Reveal.addEventListener( 'slidechanged', function( event ) {
 	// event.previousSlide, event.currentSlide, event.indexh, event.indexv
diff --git a/js/reveal.js b/js/reveal.js
index 751cb8ef24a7e79373bfbe40dbbbf288aaa839f7..310672d5cc87e804fd184a110b7b5e204bc3a99f 100644
--- a/js/reveal.js
+++ b/js/reveal.js
@@ -232,7 +232,7 @@ var Reveal = (function(){
 
 				// Extension may contain callback functions
 				if( typeof s.callback === 'function' ) {
-					head.ready( s.src.match( /([\w\d_\-]*)\.?js|[^\\\/]*$/i )[0], s.callback );
+					head.ready( s.src.match( /([\w\d_\-]*)\.?js$|[^\\\/]*$/i )[0], s.callback );
 				}
 			}
 		}