Sha256: ec97c16a011b0c0db7bc68313fc61826646f2bb8acd0a9b18a2f156ce914c92b

Contents?: true

Size: 728 Bytes

Versions: 7

Compression:

Stored size: 728 Bytes

Contents

lastTime = 0
vendors = ['ms', 'moz', 'webkit', 'o']

@cancelAnimationFrame or= @cancelRequestAnimationFrame

unless @requestAnimationFrame
  for vendor in vendors
    @requestAnimationFrame or= @[vendor+'RequestAnimationFrame']
    @cancelAnimationFrame = @cancelRequestAnimationFrame or= @[vendor+'CancelRequestAnimationFrame']
  
unless @requestAnimationFrame
  @requestAnimationFrame = (callback, element) ->
    currTime = new Date().getTime()
    timeToCall = Math.max 0, 16 - (currTime - lastTime)
    id = @setTimeout (-> callback currTime + timeToCall), timeToCall
    lastTime = currTime + timeToCall
    id

unless @cancelAnimationFrame
  @cancelAnimationFrame = @cancelRequestAnimationFrame = (id) -> clearTimeout id

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
jax-3.0.0.rc2 lib/assets/javascripts/jax/core/anim_frame.js.coffee
jax-2.0.12 lib/assets/javascripts/jax/anim_frame.js.coffee
jax-3.0.0.rc1 lib/assets/javascripts/jax/core/anim_frame.js.coffee
jax-2.0.11 lib/assets/javascripts/jax/anim_frame.js.coffee
jax-2.0.10 lib/assets/javascripts/jax/anim_frame.js.coffee
jax-2.0.9 lib/assets/javascripts/jax/anim_frame.js.coffee
jax-2.0.8 lib/assets/javascripts/jax/anim_frame.js.coffee