diff --git a/js/reveal.js b/js/reveal.js index ae682ac..b1a20cc 100644 --- a/js/reveal.js +++ b/js/reveal.js @@ -3954,6 +3954,8 @@ */ function onTouchStart( event ) { + if(preventSwipe(event.target)) return true; + touch.startX = event.touches[0].clientX; touch.startY = event.touches[0].clientY; touch.startCount = event.touches.length; @@ -3977,6 +3979,8 @@ */ function onTouchMove( event ) { + if(preventSwipe(event.target)) return true; + // Each touch should only trigger one action if( !touch.captured ) { onUserInput( event ); @@ -4267,6 +4271,15 @@ } + function preventSwipe(target) { + while( target && typeof target.hasAttribute === 'function' ) { + if(target.hasAttribute('prevent-swipe')) return true; + target = target.parentNode; + } + + return false; + } + // --------------------------------------------------------------------// // ------------------------ PLAYBACK COMPONENT ------------------------//