Skip to content

Instantly share code, notes, and snippets.

@jessebeach
Created January 29, 2012 02:08
Show Gist options
  • Save jessebeach/1696765 to your computer and use it in GitHub Desktop.
Save jessebeach/1696765 to your computer and use it in GitHub Desktop.
Building a Callback object and registering it as an event handler.
// Create callbacks for the prep event to trigger.
var readyCallbacks = $.Callbacks();
readyCallbacks.add(addControls);
readyCallbacks.add(changeSlide);
// Event bindings
$preso.on({
'screen.preso': sizeSlides,
'load.preso': loadExternalContent,
'content.preso': prepContent,
'ready.preso': readyCallbacks.fire
});
// Resize slides to the screen.
$preso.trigger('screen');
// Load external slides.
$preso.trigger('load');
// Add the controls.
$preso.trigger('content');
// Set up the first slide and controls.
$preso.trigger('ready');
var screenResizeCallbacks = $.Callbacks();
screenResizeCallbacks.add($.proxy($.fn.trigger, $preso, 'screen'));
screenResizeCallbacks.add($.proxy($.fn.trigger, $preso, 'content'));
$(window).on({
'resize.preso': screenResizeCallbacks.fire
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment