What about disabling the button on release instead of on click? That's when the action associated with a button is triggered in the browser. For example, if you click on the button but drag away from it, nothing happens.