improved fragment notes support #1636
This commit is contained in:
		@@ -53,7 +53,8 @@ var RevealNotes = (function() {
 | 
				
			|||||||
		function post( event ) {
 | 
							function post( event ) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			var slideElement = Reveal.getCurrentSlide(),
 | 
								var slideElement = Reveal.getCurrentSlide(),
 | 
				
			||||||
				notesElement = slideElement.querySelector( 'aside.notes' );
 | 
									notesElement = slideElement.querySelector( 'aside.notes' ),
 | 
				
			||||||
 | 
									fragmentElement = slideElement.querySelector( '.current-fragment' );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			var messageData = {
 | 
								var messageData = {
 | 
				
			||||||
				namespace: 'reveal-notes',
 | 
									namespace: 'reveal-notes',
 | 
				
			||||||
@@ -64,21 +65,27 @@ var RevealNotes = (function() {
 | 
				
			|||||||
				state: Reveal.getState()
 | 
									state: Reveal.getState()
 | 
				
			||||||
			};
 | 
								};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			// Look for notes defined in a fragment, if it is a fragmentshown event
 | 
					 | 
				
			||||||
			if (event && event.hasOwnProperty('fragment')) {
 | 
					 | 
				
			||||||
				var innerNotes = event.fragment.querySelector( 'aside.notes' );
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
				if ( innerNotes) {
 | 
					 | 
				
			||||||
					notesElement = innerNotes;
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
			}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
			// Look for notes defined in a slide attribute
 | 
								// Look for notes defined in a slide attribute
 | 
				
			||||||
			if( slideElement.hasAttribute( 'data-notes' ) ) {
 | 
								if( slideElement.hasAttribute( 'data-notes' ) ) {
 | 
				
			||||||
				messageData.notes = slideElement.getAttribute( 'data-notes' );
 | 
									messageData.notes = slideElement.getAttribute( 'data-notes' );
 | 
				
			||||||
				messageData.whitespace = 'pre-wrap';
 | 
									messageData.whitespace = 'pre-wrap';
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								// Look for notes defined in a fragment
 | 
				
			||||||
 | 
								if( fragmentElement ) {
 | 
				
			||||||
 | 
									var fragmentNotes = fragmentElement.querySelector( 'aside.notes' );
 | 
				
			||||||
 | 
									if( fragmentNotes ) {
 | 
				
			||||||
 | 
										notesElement = fragmentNotes;
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									else if( fragmentElement.hasAttribute( 'data-notes' ) ) {
 | 
				
			||||||
 | 
										messageData.notes = fragmentElement.getAttribute( 'data-notes' );
 | 
				
			||||||
 | 
										messageData.whitespace = 'pre-wrap';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
										// In case there are slide notes
 | 
				
			||||||
 | 
										notesElement = null;
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			// Look for notes defined in an aside element
 | 
								// Look for notes defined in an aside element
 | 
				
			||||||
			if( notesElement ) {
 | 
								if( notesElement ) {
 | 
				
			||||||
				messageData.notes = notesElement.innerHTML;
 | 
									messageData.notes = notesElement.innerHTML;
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user