server side notes plugin now supports input via data-notes attribute

This commit is contained in:
Hakim El Hattab
2014-02-17 20:07:41 +01:00
parent 9478d03cf6
commit a22d00ab25
2 changed files with 43 additions and 23 deletions

View File

@ -24,9 +24,7 @@ var RevealNotes = (function() {
function post() {
var slideElement = Reveal.getCurrentSlide(),
slideIndices = Reveal.getIndices(),
messageData;
var notes = slideElement.querySelector( 'aside.notes' ),
notesElement = slideElement.querySelector( 'aside.notes' ),
nextindexh,
nextindexv;
@ -38,16 +36,27 @@ var RevealNotes = (function() {
nextindexv = 0;
}
messageData = {
notes : notes ? notes.innerHTML : '',
var messageData = {
notes : '',
indexh : slideIndices.h,
indexv : slideIndices.v,
indexf : slideIndices.f,
nextindexh : nextindexh,
nextindexv : nextindexv,
markdown : notes ? typeof notes.getAttribute( 'data-markdown' ) === 'string' : false
markdown : false
};
// Look for notes defined in a slide attribute
if( slideElement.hasAttribute( 'data-notes' ) ) {
messageData.notes = slideElement.getAttribute( 'data-notes' );
}
// Look for notes defined in an aside element
if( notesElement ) {
messageData.notes = notesElement.innerHTML;
messageData.markdown = typeof notesElement.getAttribute( 'data-markdown' ) === 'string';
}
notesPopup.postMessage( JSON.stringify( messageData ), '*' );
}