According to a coworker who just attended a workshop on modeling math in elementary school, he said the presenter recommended having the students work with balances to solve algebraic problems. I know of two free balancing apps for the iPad but not all classes have iPads.
Math Playground has a lovely algebraic balance activity that helps students learn to solve one and two step equations. This is a lovely virtual manipulative in that it provides a tutorial session when you first begin the interactive balance. In addition, it provides immediate feedback on if the student is right or wrong for the step. This works on the mac but not the iPad.
Hooda Math is another website with an algebraic balance activity. This balance is easy to use but it works strictly with addition, subtraction, multiplication, or division using positive values. Furthermore, it requires the student to subtract one x at a time rather than the total x value. This makes it a bit harder for the student to work the problems. This balance seems to be for younger students to work with.
Home School Math has a great set of illustrations with explanations that show how to balance equations. It is not neither a balance nor a manipulative but it does provide a great introduction to students so they can observe what happens before they start using the interactive balances.
Math is Fun has one of the best balances I've seen online. It starts with the equation already set up on the balance so students see that the equal sign does not necessarily indicate the answer but the two sides are equal. Furthermore, it has a control that allows the student to add or subtract the x's or constants and they see this effecting both sides at once. In other words, they see the "if you do it to one side, you must do it to the other side" rule.
If a student gets something like -x = -3 it turns out you have to add the x to both sides and then add 3 to both sides to get 3 = x. Rather than multiplying or dividing by a negative, this balance has you continue adding x till the x is on the positive side. The same applies to the constant. This is a nice way of showing students a second way to get positive values.