After removing hash from URL using window.location.hash=''
page getting reloaded in firefox.
EDIT
Example:
wwww.Mysite.come/#page=1
On a click of button I am removing hash value using following code
window.location.hash=''
After removing the hash page is getting reloaded in firefox.
I don't want to reload page I just want to remove hash from URL
How to fix it?
From https://developer.mozilla.org/en/DOM/window.location:
Examples
Whenever a property of the location object is modified, a document
will be loaded using the URL as if window.location.assign() had been
called with the modified URL.
This question I think addresses what you want using jQuery:
Change hash without reload in jQuery
Other related questions:
Change the URL in the browser without loading the new page using JavaScript
How to remove the hash from window.location with JavaScript without page refresh?
How can I change Firefox window.location.hash without creating a page reload?
Just in case somebody else is still looking for a solution to this. Try this when the page loads.
history.pushState("", document.title, window.location.pathname);
If I understand correctly,
<a href="#someElementID" id="myLinkName">Some Text</a>
clicking the above link in a browser normally results in an added hash in the address bar, like www.websitename.com#someElementID <- this is what you're looking to prevent, yes?
The solution I just tested which is working and DOES NOT refresh the page is:
event.preventDefault();
This works in a 'click()' event that involves anchor tags that link to elements' id's, such as in the anchor tag example above. In action, it would look like this in your 'click()' event:
<script>
$('#myLinkName').click(function(){
event.preventDefault();
//the rest of the function is the same.
});
</script>
Now, clicking on the same link leaves the address bar with the same URL www.websitename.com, WITHOUT the added hash from clicking the anchor.
We can remove/escape from appending the hash by returning false in click function.
<script>
$('#add_user').click(function(){
//your custom function code here..
return false;
});
</script>
<a id="add_user" href="#">Add Card</a>