### jQuery.Turbolinks ~ github.com/kossnocorp/jquery.turbolinks jQuery plugin for drop-in fix binded events problem caused by Turbolinks
The MIT License Copyright © 2012-2013 Sasha Koss & Rico Sta. Cruz ###
$ = window.jQuery or require?(‘jquery’) $document = $(document)
$.turbo =
version: '2.1.0' isReady: false # Hook onto the events that Turbolinks triggers. use: (load, fetch) -> $document .off('.turbo') .on("#{load}.turbo", @onLoad) .on("#{fetch}.turbo", @onFetch) addCallback: (callback) -> if $.turbo.isReady callback($) $document.on 'turbo:ready', -> callback($) onLoad: -> $.turbo.isReady = true $document.trigger('turbo:ready') onFetch: -> $.turbo.isReady = false # Registers jQuery.Turbolinks by monkey-patching jQuery's # `ready` handler. (Internal) # # [1] Trigger the stored `ready` events on first load. # [2] Override `$(function)` and `$(document).ready(function)` by # registering callbacks under a new event called `turbo:ready`. # register: -> $(@onLoad) #[1] $.fn.ready = @addCallback #[2]
# Use with Turbolinks
. $.turbo.register() $.turbo.use(‘page:load’, ‘page:fetch’)