Try with the code below instead. I've modified a bit your regex so it won't strip the '-' sign in front of: e.g. '-80px' and will return '-80'. Your regex returned '80' even for negative values. When pressing the left button, the negative left offset was messed up by the regex and all those circles shared the same offset...
$("#right,#left").click ->
id = this.id
patt = /(-)*[0-9]+/g
circles = $(".circle")
for cir in circles
left = $(cir).css("left")
lef = parseInt(left.match(patt))
le = if id is "right" then lef - 80 else lef + 80
$(cir).css("left","#{le}px")