- From: Boris Zbarsky <bzbarsky@MIT.EDU>
- Date: Mon, 15 Nov 2010 21:17:50 -0500
- To: "Gregg Tavares (wrk)" <gman@google.com>
- CC: "public-webapps@w3.org" <public-webapps@w3.org>
On 11/15/10 6:55 PM, Gregg Tavares (wrk) wrote: > How would setInterval with multiple functions on > mozRequestAnimationFrame solve this issue? They are still all going to > get called at the fastest interval right? Why? setInterval(function() { window.requestAnimationFrame(function redrawElem1() { /* ... */ }); }, 33); setInterval(function() { window.requestAnimationFrame(function redrawElem2() { /* ... */ }); }, 100); This should redraw elem1 close to 30Hz and elem2 close to 10Hz. > Or did you mean if mozRequestAnimationFrame was moved to an element level function? The element involved can be encoded in the callback function passed to requestAnimationFrame, as above. > I've seen proposals for something more like > > element.setInternvalIfVisible(func, internval); > > Which is the same as setInterval but only gets called if the element is > visible. Right, but the point is that the work of determining whether things are visible is work you want to do _after_ animations have updated... > With that kind of API there is no connection to rendering. I'm not sure what that means. > Would something more like that solve the issue? Which issue are we trying to solve? The idea of the current animation frame API was to solve the following problems: 1) Provide a way to create smooth DOM animations that synchronize with SMIL and CSS3 Transitions. 2) Provide a way to throttle all such animations on the UA side (that includes throttling SMIL and Transitions). It sounds like you're trying to solve a somewhat different problem, right? -Boris
Received on Tuesday, 16 November 2010 02:18:24 UTC