Bouncing Javascript [tutorial]
Filed under JavaScriptExample
Original Source: http://giancarlo.dimassa.net
There have been many examples of bouncing effects in scriptaculous but this one has to be one of the most realistic. It uses the equations developed by Robert Penner to accurately represent a bounce, and it does look cool.
What you need
As with most of my tutorials this is based on scriptaculous and prototype, but the equations could easily be porter to other animation frameworks.
The code
This is really simple, basically what we are going to be doing is to add a new transitional effect to scriptaculous. To do this we just extend the Effect class.
Add this to your own JavaScript file instead of scriptaculous, so you don’t loose it when you update.
/*Based on Easing Equations v2.0
(c) 2003 Robert Penner, all rights reserved.
This work is subject to the terms in http://www.robertpenner.com/easing_terms_of_use.html
Adapted for Scriptaculous by Ken Snyder (kendsnyder ~at~ gmail ~dot~ com) June 2006
*/
function (pos) {
if (pos < 0.36363636363636365) {
return 7.5625 * pos * pos;
} else if (pos < 0.7272727272727273) {
return 7.5625 * (pos -= 0.5454545454545454) * pos + 0.75;
} else if (pos < 0.9090909090909091) {
return 7.5625 * (pos -= 0.8181818181818182) * pos + 0.9375;
} else {
return 7.5625 * (pos -= 0.9545454545454546) * pos + 0.984375;
}
}
Use it
You can use this effect as a transition type with lots of effects.
new Effect.BlindDown(div, {
duration: 0.5,
transition: Effect.Transitions.Bounce
});
Check out Ken Snyder’s blog for more transitional effects.



[...] Bouncing Javascript Tutorial - via Collin [...]
March 27th, 2008 at 6:08 pm