瀏覽代碼

Merge branch '1549' of https://github.com/RopoMen/reveal.js into dev

Hakim El Hattab 9 年之前
父節點
當前提交
f0ee41a22d
共有 1 個文件被更改,包括 10 次插入5 次删除
  1. 10 5
      js/reveal.js

+ 10 - 5
js/reveal.js

@@ -32,6 +32,7 @@
 		HORIZONTAL_SLIDES_SELECTOR = '.slides>section',
 		VERTICAL_SLIDES_SELECTOR = '.slides>section.present>section',
 		HOME_SLIDE_SELECTOR = '.slides>section:first-of-type',
+		UA = navigator.userAgent,
 
 		// Configuration defaults, can be overridden at initialization time
 		config = {
@@ -201,6 +202,9 @@
 		// Client is a mobile device, see #checkCapabilities()
 		isMobileDevice,
 
+		// Client is a desktop Chrome, see #checkCapabilities()
+		isChrome,
+
 		// Throttles mouse wheel navigation
 		lastMouseWheelStep = 0,
 
@@ -305,7 +309,8 @@
 	 */
 	function checkCapabilities() {
 
-		isMobileDevice = /(iphone|ipod|ipad|android)/gi.test( navigator.userAgent );
+		isMobileDevice = /(iphone|ipod|ipad|android)/gi.test( UA );
+		isChrome = /chrome/i.test( UA ) && !/edge/i.test( UA );
 
 		var testElement = document.createElement( 'div' );
 
@@ -328,13 +333,13 @@
 
 		// Transitions in the overview are disabled in desktop and
 		// Safari due to lag
-		features.overviewTransitions = !/Version\/[\d\.]+.*Safari/.test( navigator.userAgent );
+		features.overviewTransitions = !/Version\/[\d\.]+.*Safari/.test( UA );
 
 		// Flags if we should use zoom instead of transform to scale
 		// up slides. Zoom produces crisper results but has a lot of
 		// xbrowser quirks so we only use it in whitelsited browsers.
 		features.zoom = 'zoom' in testElement.style && !isMobileDevice &&
-						( /chrome/i.test( navigator.userAgent ) || /Version\/[\d\.]+.*Safari/.test( navigator.userAgent ) );
+						( isChrome || /Version\/[\d\.]+.*Safari/.test( UA ) );
 
 	}
 
@@ -1052,7 +1057,7 @@
 
 		// Only support touch for Android, fixes double navigations in
 		// stock browser
-		if( navigator.userAgent.match( /android/gi ) ) {
+		if( UA.match( /android/gi ) ) {
 			pointerEvents = [ 'touchstart' ];
 		}
 
@@ -4180,7 +4185,7 @@
 		}
 		// There's a bug with swiping on some Android devices unless
 		// the default action is always prevented
-		else if( navigator.userAgent.match( /android/gi ) ) {
+		else if( UA.match( /android/gi ) ) {
 			event.preventDefault();
 		}