Чтобы пружинился - это же задача механники
Ну или школьной физики
По поводу кода - как-то сумбурно сделано, как я понял, где-то должна быть еще функция для движения вправо... Зачем-то каждый раз создаются и сбрасываются таймауты... Зачем-то всякий раз при обращении к элементу, он ищется по его id...
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<body>
<div id="foo" style="border: 1px solid red; overflow: hidden; position: relative; zoom: 1;">
<div id="bar" style="border: 1px solid green; position: absolute; padding: 1px 2px;">Страдаю фигней :)</div>
</div>
<script type="text/javascript">
(function() {
var foo = document.getElementById('foo'), bar = document.getElementById('bar');
foo.style.height = bar.offsetHeight + 'px';
var x = 0, reverse = false;
window.setInterval(function() {
var l = foo.clientWidth - bar.offsetWidth;
x += Math.pow(6 - x * 4 / l, 2) / 4;
if (x >= l) x = 0, reverse = !reverse;
bar.style.left = Math.floor(reverse ? l - x : x) + 'px';
}, 10);
})();
</script>
</body>
</html>