tubestats-presentation/lib/slidenotes/client.js

36 lines
1000 B
JavaScript
Raw Normal View History

(function() {
// don't emit events from inside the previews themselves
2012-07-04 18:42:27 +00:00
if ( window.location.search.match( /receiver/gi ) ) { return; }
var socket = io.connect(window.location.origin);
var socketId = Math.random().toString().slice(2);
2012-07-01 20:56:06 +00:00
console.log('View slide notes at ' + window.location.origin + '/notes/' + socketId);
2012-06-17 22:43:29 +00:00
Reveal.addEventListener( 'slidechanged', function( event ) {
var nextindexh;
var nextindexv;
var slideElement = event.currentSlide;
if (slideElement.nextElementSibling && slideElement.parentNode.nodeName == 'SECTION') {
nextindexh = event.indexh;
nextindexv = event.indexv + 1;
} else {
nextindexh = event.indexh + 1;
nextindexv = 0;
}
var notes = slideElement.querySelector('aside.notes');
var slideData = {
notes : notes ? notes.innerHTML : '',
indexh : event.indexh,
indexv : event.indexv,
nextindexh : nextindexh,
nextindexv : nextindexv,
socketId : socketId
};
socket.emit('slidechanged', slideData);
} );
}());