Im currently in the process of implementing collision and response into
CopperLicht, the JavaScript 3D engine I recently released. It already works and you are able to walk around in a Quake 3 level in realtime, and it is also already possible to walk up and down stairs:
The problem is that collision is quite a quite CPU-intensive task. Systems today don't have any problems calculating collisions against thousands of polygons per frame, but doing this in JavaScript is a more difficult task: JavaScript is incredibly slow.
I've used several tricks already (like you can see a bit on the lower left of the screenshot, CopperLicht automaticly created an OctTree for collision as it reports with the gray text) and it works very nice already in Chrome, which has an extremely fast JavaScript VM. But in FireFox, this is still not very usable, dropping down to about 5-10 frames per second.
But let's see, there is still room for improvement.