atsortingbut de changement jQuery

J’ai 4 liens et j’ai besoin de changer l’atsortingbut href dans un atsortingbut rel. Je sais que je ne peux pas le faire alors j’essaie d’obtenir les données de l’atsortingbut href, en définissant un nouvel atsortingbut (rel), en insérant les données qu’il contient et en supprimant l’atsortingbut href.

fondamentalement je fais ceci:

$('div#menu ul li a').each(function(){ var lin = $(this).attr('href'); $('div#menu ul li a').attr('rel',lin); $(this).removeAttr('href'); }) }) 

cela fonctionne mais il fixe les mêmes données relatives dans chaque lien que j’ai.

de l’aide?

     $('div#menu ul li a').each(function(){ var lin = $(this).attr('href'); $(this).attr('rel',lin); $(this).removeAttr('href'); }); 

    Essayer

     $('div#menu ul li a').each(function(){ var lin = $(this).attr('href'); $(this).attr('rel',lin); $(this).removeAttr('href'); }) }) 

    En réalité, je n’ai pas exécuté le code … mais cela devrait suffire.

    Changement:

     $('div#menu ul li a').attr('rel',lin); 

    À:

     $(this).attr('rel',lin); 

    Vous faites probablement “ça” mal. (ce qui signifie qu’il existe un meilleur moyen de faire ce que vous essayez).

    mais juste pour répondre à votre question:

     $('#menu ul li a').each(function(){ var lin = $(this).attr('href'); $(this).attr('rel',lin).removeAttr('href'); }); 

    Voici une solution solide jQuery:

     $(function() { $("a.selector").on("click", function() { var sortinggger = $(this.hash); sortinggger.removeAttr("id"); window.location.hash = this.hash; sortinggger.attr("id", this.hash.replace("#","")); return false; }); }); 

    c’est le problème

     $('div#menu ul li a').attr('rel',lin); 

    cette ligne applique les modifications à tous les éléments qui correspondent à votre sélecteur, ce qui dans votre cas correspondra aux quatre liens – utilisez ce code à la place

     $('div#menu ul li a').each(function(){ var lin = $(this).attr('href'); $(this).attr('rel',lin); $(this).removeAttr('href'); }) })