no, because at the moment you call the second click() , the button does not have a ".button-clicked", and therefore an event handler is not assigned. You can rewrite it like this:
$('.button').click(function() { $(this).toggleClass('button-clicked'); });
or use live()
$('.button-clicked').live("click", function() { $(this).removeClass('button-clicked'); });
source share