How can I prevent a click on a '#' link from jumping to top of page?

html, javascript, jquery

Solution

In jQuery, when you handle the click event, return false to stop the link from responding the usual way prevent the default action, which is to visit the `href` attribute, from taking place (per PoweRoy's comment and Erik's answer):

$('a.someclass').click(function(e)
{
    // Special stuff to do when this link is clicked...

    // Cancel the default action
    e.preventDefault();
});

Problem

I'm currently using `<a>` tags with jQuery to initiate things like click events, etc. An example of what I'm doing is: `<a href="#" class="someclass">Text</a>`. But I dislike how the '#' makes the page jump to the top of the page. What can I do instead?

Original source

Related problems