merge options for parallax step size #733
This commit is contained in:
		
							
								
								
									
										13
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								README.md
									
									
									
									
									
								
							| @@ -175,6 +175,10 @@ Reveal.initialize({ | ||||
| 	// Parallax background size | ||||
| 	parallaxBackgroundSize: '' // CSS syntax, e.g. "2100px 900px" | ||||
|  | ||||
| 	// Amount to move parallax background (horizontal and vertical) on slide change | ||||
| 	// Number, e.g. 100 | ||||
| 	parallaxBackgroundHorizontal: '', | ||||
| 	parallaxBackgroundVertical: '' | ||||
|  | ||||
| }); | ||||
| ``` | ||||
| @@ -440,7 +444,7 @@ Backgrounds transition using a fade animation by default. This can be changed to | ||||
|  | ||||
| ### Parallax Background | ||||
|  | ||||
| If you want to use a parallax scrolling background, set the two following config properties when initializing reveal.js (the third one is optional). | ||||
| If you want to use a parallax scrolling background, set the first two config properties below when initializing reveal.js (the other two are optional). | ||||
|  | ||||
| ```javascript | ||||
| Reveal.initialize({ | ||||
| @@ -451,8 +455,11 @@ Reveal.initialize({ | ||||
| 	// Parallax background size | ||||
| 	parallaxBackgroundSize: '', // CSS syntax, e.g. "2100px 900px" - currently only pixels are supported (don't use % or auto) | ||||
|  | ||||
| 	// This slide transition gives best results: | ||||
| 	transition: 'slide' | ||||
| 	// Amount of pixels to move the parallax background per slide step, | ||||
| 	// a value of 0 disables movement along the given axis | ||||
| 	// These are optional, if they aren't specified they'll be calculated automatically | ||||
| 	parallaxBackgroundHorizontal: 200, | ||||
| 	parallaxBackgroundVertical: 50 | ||||
|  | ||||
| }); | ||||
| ``` | ||||
|   | ||||
							
								
								
									
										38
									
								
								js/reveal.js
									
									
									
									
									
								
							
							
						
						
									
										38
									
								
								js/reveal.js
									
									
									
									
									
								
							| @@ -136,6 +136,10 @@ | ||||
| 			// Parallax background size | ||||
| 			parallaxBackgroundSize: '', // CSS syntax, e.g. "3000px 2000px" | ||||
|  | ||||
| 			// Amount of pixels to move the parallax background per slide step | ||||
| 			parallaxBackgroundHorizontal: null, | ||||
| 			parallaxBackgroundVertical: null, | ||||
|  | ||||
| 			// Number of slides away from the current that are visible | ||||
| 			viewDistance: 3, | ||||
|  | ||||
| @@ -2672,15 +2676,35 @@ | ||||
| 				backgroundHeight = parseInt( backgroundSize[1], 10 ); | ||||
| 			} | ||||
|  | ||||
| 			var slideWidth = dom.background.offsetWidth; | ||||
| 			var horizontalSlideCount = horizontalSlides.length; | ||||
| 			var horizontalOffset = -( backgroundWidth - slideWidth ) / ( horizontalSlideCount-1 ) * indexh; | ||||
| 			var slideWidth = dom.background.offsetWidth, | ||||
| 				horizontalSlideCount = horizontalSlides.length, | ||||
| 				horizontalOffsetMultiplier, | ||||
| 				horizontalOffset; | ||||
|  | ||||
| 			var slideHeight = dom.background.offsetHeight; | ||||
| 			var verticalSlideCount = verticalSlides.length; | ||||
| 			var verticalOffset = verticalSlideCount > 1 ? -( backgroundHeight - slideHeight ) / ( verticalSlideCount-1 ) * indexv : 0; | ||||
| 			if( typeof config.parallaxBackgroundHorizontal === 'number' ) { | ||||
| 				horizontalOffsetMultiplier = config.parallaxBackgroundHorizontal; | ||||
| 			} | ||||
| 			else { | ||||
| 				horizontalOffsetMultiplier = ( backgroundWidth - slideWidth ) / ( horizontalSlideCount-1 ); | ||||
| 			} | ||||
|  | ||||
| 			dom.background.style.backgroundPosition = horizontalOffset + 'px ' + verticalOffset + 'px'; | ||||
| 			horizontalOffset = horizontalOffsetMultiplier * indexh * -1; | ||||
|  | ||||
| 			var slideHeight = dom.background.offsetHeight, | ||||
| 				verticalSlideCount = verticalSlides.length, | ||||
| 				verticalOffsetMultiplier, | ||||
| 				verticalOffset; | ||||
|  | ||||
| 			if( typeof config.parallaxBackgroundVertical === 'number' ) { | ||||
| 				verticalOffsetMultiplier = config.parallaxBackgroundVertical; | ||||
| 			} | ||||
| 			else { | ||||
| 				verticalOffsetMultiplier = ( backgroundHeight - slideHeight ) / ( verticalSlideCount-1 ); | ||||
| 			} | ||||
|  | ||||
| 			verticalOffset = verticalSlideCount > 0 ?  verticalOffsetMultiplier * indexv * 1 : 0; | ||||
|  | ||||
| 			dom.background.style.backgroundPosition = horizontalOffset + 'px ' + -verticalOffset + 'px'; | ||||
|  | ||||
| 		} | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user