web-dev-qa-db-fra.com

Onclick changer l'url en utilisant jquery

J'essaye de changer une URL en utilisant jquery.

Donc, une fois que le bouton est cliqué, il changera l'URL parent mais il ne redirigera pas.

Par exemple, si l'URL est,

http://www.xyz.com alors il deviendra http://www.xyz.com/abc mais ne sera pas redirigé.

Mon code:

$('.clickme').click(function () {
    window.location.hash = 'xyz';
});

Est-ce que c'est possible?

Veuillez suggérer.

JSfiddle: http://jsfiddle.net/squidraj/Tn8BW/3/

13
Prithviraj Mitra

Javascript peut heureusement modifier l'historique du navigateur et changer l'url. Cet exemple ajoutera une nouvelle ligne à l'historique de votre navigateur et vous pourrez utiliser le bouton de retour pour accéder à cette page.

HTML:

<a href="http://www.xyz.com/abc" id="link">abc</a>

jQuery:

$('#link').click(function() {
   window.history.pushState('obj', 'newtitle', '/abc');
   return false;
});

Ou si vous souhaitez utiliser des hachages d'URL (comme dans votre code):

$('#link').click(function () {
    window.location.hash = 'xyz';
    return false;
});

Cela ne redirigera pas, il restera sur la page.

25
aksu

au lieu de window.location, vous devez modifier l'historique

exemple de code

var stateObj = { foo: "bar" };
history.pushState(stateObj, "page 2", "bar.html");
3
marvwhere