preventDefault () funktioniert nicht

Wenn ich event.preventDefault () für einen Link verwende, funktioniert das, wenn ich es für einen Button verwende, nicht!
DEMO
mein Code:

<code><a id="link" href="http://www.google.com">link</a>
<button id="button" onclick="alert('an alert')">button</button>​

$('#link').click(function(event){
  event.preventDefault();
});
$('#button').click(function(event){
  event.preventDefault();
});
</code>

Die Link-Aktion wird abgebrochen, aber wenn ich auf die Schaltfläche klicke, wird die OnClick-Aktion trotzdem ausgeführt
Irgendeine Hilfe? Was ich tun möchte, ist, die Schaltfläche onClick-Aktion zu verhindernohne den button html zu ändern Ich weiß, wie es geht

$('#button').removeAttr('onclick');

Antworten auf die Frage(4)

Ihre Antwort auf die Frage