I have two different event handlers in two different locations in my page. One is supposed to be a default handler that handles 99% of the events everywhere in the whole site. The second is used on a single page to override that default behavior.

```js
$(function() {

  // side-wide default action
  $('#button').click(function() {
    window.location.reload();           
  });

  // handler used on a single page, somewhere else in the JS
  $('#button').click(function() {
    window.location.href = "/page2";   
  });
});
```

```html
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button id="#button">Click</button>
```

No matter what I do, the first (i.e. `reload()`) operation is always called. I can put the `reload` in a `setTimeout` or I can completely refactor the JS so that it is either before or after the redirect assignment. It doesnt matter. The page is always reloaded and the URL never changes.

How can I get the redirect to work without gutting the default behavior? Can I set a priority? Can I halt execution after the assignment?