Remove hashtag(#) from url

Dchris picture Dchris · Apr 26, 2014 · Viewed 12.7k times · Source

I want hash-tags to be removed from URL after they are used. For example, when i click on the link below:

<a href="#btnq1"><button type="button" name="" value="" id="btnq1">Just a button</button></a>

I want the hash-tag #btnq1 that appears to the URL of the page to be removed just after the action on this link happens. I tried the below jquery code with no success:

$('#btnq1').click(function(event){
   event.preventDefault();
   // your action
});

And even if this works, then how do i implement it to work for every hash tag that is added to the URL? I would like to solve it using javascript.

Answer

A. Wolff picture A. Wolff · Apr 26, 2014

You could try that:

$(window).on('hashchange', function(e){
    history.replaceState ("", document.title, e.originalEvent.oldURL);
});