The purpose of this demo is to test and see how possible is to synchronize sounds with DOM effects while being played in different threads or timers. It looks like, while synchronizing sounds with DOM effects is quite simple and works fine, sounds played by different threads or timers get out of sync after a while.

See the demo in action.
Next step: build a sound controller class that can play sounds at some intervals, delays, etc
I have updated the Grass demo and renamed it to Forest, which I think is a more appropriate environment for the sounds I used. I have done some fixes to the rain loop and I have added some light animations.

Grass is an example of how to create an environment with multiple sounds playing in the background at random intervals.

See the demo:
http://dev.enekoalonso.com/research/grass.php
Last week I read about the SoundManager2 javascript/flash library to manage sounds on websites (I found SoundManager2 while reading about MooSound, a sound management library based in Mootools that I haven’t tried yet.). The library looks very nice. It is pretty small but at the same time it gives you a lot of control on sound playing. You can change the position of the sound while playing, adjust the stereo pan from left to right and much more.
Today I wanted to test this library and I decided to add some sounds to my Particle-Balls demo. Every time a ball hits a wall, a sound plays. To make it more fun, I use the X coordinate of the ball to adjust the pan, so if the ball is closest to he left border the sound will play on the left speaker and same with the right border/speaker. The pan can be adjusted gradually from -100 to 100 (left to right).

Check the demo here:
http://dev.enekoalonso.com/research/particle-balls.php