1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- /**
- * History.js jQuery Adapter
- * @author Benjamin Arthur Lupton <contact@balupton.com>
- * @copyright 2010-2011 Benjamin Arthur Lupton <contact@balupton.com>
- * @license New BSD License <http://creativecommons.org/licenses/BSD/>
- */
- // Closure
- (function(window,undefined){
- "use strict";
- // Localise Globals
- var
- History = window.History = window.History||{},
- jQuery = window.jQuery;
- // Check Existence
- if ( typeof History.Adapter !== 'undefined' ) {
- throw new Error('History.js Adapter has already been loaded...');
- }
- // Add the Adapter
- History.Adapter = {
- /**
- * History.Adapter.bind(el,event,callback)
- * @param {Element|string} el
- * @param {string} event - custom and standard events
- * @param {function} callback
- * @return {void}
- */
- bind: function(el,event,callback){
- jQuery(el).bind(event,callback);
- },
- /**
- * History.Adapter.trigger(el,event)
- * @param {Element|string} el
- * @param {string} event - custom and standard events
- * @param {Object=} extra - a object of extra event data (optional)
- * @return {void}
- */
- trigger: function(el,event,extra){
- jQuery(el).trigger(event,extra);
- },
- /**
- * History.Adapter.extractEventData(key,event,extra)
- * @param {string} key - key for the event data to extract
- * @param {string} event - custom and standard events
- * @param {Object=} extra - a object of extra event data (optional)
- * @return {mixed}
- */
- extractEventData: function(key,event,extra){
- // jQuery Native then jQuery Custom
- var result = (event && event.originalEvent && event.originalEvent[key]) || (extra && extra[key]) || undefined;
- // Return
- return result;
- },
- /**
- * History.Adapter.onDomLoad(callback)
- * @param {function} callback
- * @return {void}
- */
- onDomLoad: function(callback) {
- jQuery(callback);
- }
- };
- // Try and Initialise History
- if ( typeof History.init !== 'undefined' ) {
- History.init();
- }
- })(window);
|