Ticket #9384 (closed feature: wontfix)
jQuery.fx.interval should be replaced by an 'animation-tick' throttling feature.
| Reported by: | louisremi@… | Owned by: | |
|---|---|---|---|
| Priority: | low | Milestone: | None |
| Component: | effects | Version: | 1.6.1 |
| Keywords: | 1.9-discuss | Cc: | |
| Blocking: | Blocked by: |
Description (last modified by rwaldron) (diff)
jQuery.fx.interval should be replaced by an 'animation-tick' throttling feature. Why removing fx.interval?
- reducing fx.interval fails at producing noticeably smoother animations (browser vendors even agreed on a 16.666 value to aim for 60fps)
- fx.interval is useless in browsers supporting requestAnimationFrame
- developers struggle at updating the interval value while their animation is running (example: http://forum.jquery.com/topic/jquery-fx-interval-controlled-by-ui-slider-help )
Why throttling animation ticks instead?
- because it serves a similar purpose (saving CPU cycles when animations do not need to run at 60fps)
- because it can solves all of the above problems
- because the implementation adds only 1 line of code: https://github.com/jquery/jquery/pull/334/files
Change History
comment:5 Changed 2 years ago by timmywil
- Priority changed from undecided to low
- Status changed from new to open
- Component changed from unfiled to effects
- Description modified (diff)
comment:6 Changed 2 years ago by dmethvin
+0, That commit has more than one line of code. Also, it changes the documented jQuery.fx.interval behavior. What docs changes do we need on this?
comment:7 Changed 2 years ago by john
- Description modified (diff)
+1, I think this is fine. Good to get consistency.
comment:10 Changed 2 years ago by lrbabe
- Owner set to lrbabe
- Status changed from open to assigned
- Description modified (diff)
- Milestone changed from 1.next to 1.7
comment:11 Changed 22 months ago by timmywil
pull request from lrbabe
comment:12 Changed 20 months ago by dmethvin
- Keywords 1.8-discuss added; 1.7-discuss removed
- Milestone changed from 1.7 to 1.8
Pushed to 1.8 since requestAnimationFrame was removed in 1.6.3 and it should be addressed as part of a larger animation reorganization.
comment:14 Changed 17 months ago by jaubourg
+0, Part of a bigger animation rewrite
comment:15 Changed 17 months ago by dmethvin
- Description modified (diff)
+0, Definitely part of a bigger rethink, so I'll defer to gnarf.
comment:16 Changed 17 months ago by jzaefferer
- Description modified (diff)
+1, if raf is coming back
comment:17 Changed 17 months ago by timmywil
+1, Makes sense if raf comes back
comment:18 Changed 17 months ago by rwaldron
- Description modified (diff)
+1, I tend to trust gnarf on these things
comment:20 Changed 9 months ago by dmethvin
- Keywords 1.9-discuss added; 1.8-discuss removed
- Milestone changed from 1.8 to 1.9
It is time to talk about rAF again?
comment:21 Changed 8 months ago by dmethvin
- Type changed from enhancement to feature
Bulk change from enhancement to feature.
comment:22 Changed 7 months ago by mikesherov
+1, still plus one
comment:23 Changed 7 months ago by gnarf
- Owner gnarf deleted
- Status changed from assigned to open
I would really like to see this as one of those "interchangable" points, that we could actually release a plugin to use a different "timer loop" -- The setTimeout() and interval right now are like the "default" and also, no matter what we end up doing, they are the least amount of code. I'm going to pull myself off of this one and suggest that we think about making the "tick throttling" a pluginable feature.
comment:24 Changed 7 months ago by mikesherov
- Status changed from open to closed
- Resolution set to wontfix
Closing this in favor of #12803
Please follow the bug reporting guidlines and use jsFiddle when providing test cases and demonstrations instead of pasting the code in the ticket.

Nominating ticket for 1.7 discussion.