diff --git a/README.md b/README.md
index c60e6a48..d8960b18 100644
--- a/README.md
+++ b/README.md
@@ -592,6 +592,9 @@ Reveal.isLastSlide();
Reveal.isOverview();
Reveal.isPaused();
Reveal.isAutoSliding();
+
+// Returns the top-level DOM element
+getRevealElement(); //
...
```
### Custom Key Bindings
diff --git a/js/reveal.js b/js/reveal.js
index f6f79031..637ea63a 100644
--- a/js/reveal.js
+++ b/js/reveal.js
@@ -5683,6 +5683,11 @@
return query;
},
+ // Returns the top-level DOM element
+ getRevealElement: function() {
+ return dom.wrapper || document.querySelector( '.reveal' );
+ },
+
// Returns true if we're currently on the first slide
isFirstSlide: function() {
return ( indexh === 0 && indexv === 0 );
@@ -5724,12 +5729,12 @@
// Forward event binding to the reveal DOM element
addEventListener: function( type, listener, useCapture ) {
if( 'addEventListener' in window ) {
- ( dom.wrapper || document.querySelector( '.reveal' ) ).addEventListener( type, listener, useCapture );
+ Reveal.getRevealElement().addEventListener( type, listener, useCapture );
}
},
removeEventListener: function( type, listener, useCapture ) {
if( 'addEventListener' in window ) {
- ( dom.wrapper || document.querySelector( '.reveal' ) ).removeEventListener( type, listener, useCapture );
+ Reveal.getRevealElement().removeEventListener( type, listener, useCapture );
}
},