Skip to content

Instantly share code, notes, and snippets.

@fsvehla
Created November 14, 2011 15:42
Show Gist options
  • Save fsvehla/1364204 to your computer and use it in GitHub Desktop.
Save fsvehla/1364204 to your computer and use it in GitHub Desktop.
spinOptions =
lines: 12
length: 4
width: 2
radius: 4
color: '#333'
fadeInTime = 400
minTime = 400
fadeOutTime = 600
$ ->
spinner = $('#spinner')
spinner.bind 'ajaxSend', ->
return if spinner.data('spinner')?
spinner.queue ->
spinner.data('spinner', new Spinner(spinOptions).spin())
spinner.hide()
.append(spinner.data('spinner').el)
.fadeIn(fadeInTime)
.queue ->
setTimeout((-> spinner.dequeue()), minTime)
.dequeue()
.bind 'ajaxComplete', ->
return if !spinner.data('spinner')?
spinner.fadeOut fadeOutTime, ->
return if !spinner.data('spinner')?
spinner.data('spinner').stop()
spinner.data('spinner', null)
spinner.empty()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment