Doh, just as I clicked send I realised you wanted the solution for when JS was *not* available. I guess you could use display:none/display:block in your CSS along side the necessary 'top' values, and then use the callbacks as shown above, but with opposite effects. This way, when JS is available, the callbacks will negate the display:none stuff and just use 'top', but the display:none will still be there when JS is unavailable.
Did that make sense? I rushed it out to cover my previous post's error ;) Joel Birch.