2010-11-20 4 views
2

J'ai plus de liens tels:Remplacer l'attribut rel avec href en utilisant jQuery - préserver la valeur

<a rel="custom_link1_to_large_image">thumb</a> 

est-il un moyen de préserver les liens et ont à la place href: href = « custom_link1_to_large_image »

Je dois le faire fonctionner avec une lightbox et je n'ai pas la possibilité de l'ajouter manuellement car ils sont générés automatiquement par NextGen de WP.

Merci!

Répondre

0

Cela devrait le faire:

$('a[rel]').attr('href', function() { 
    return $('this').attr('rel'); 
}).attr('rel', ''); 
1
$("a").each(function(){ 
    $(this).attr("href", $(this).attr("rel")); 
}); 

dessus fera tous les liens:

<a rel="custom_links">..</a> 

Devenez

<a rel="custom_links" href="custom_links">...</a> 
0

Je ferais plus comme ceci:

$('a[rel]').attr('rel',function(i,rel){ this.href = rel; return null; }); 

Exemple:http://jsfiddle.net/patrick_dw/xnyr5/

Si vous souhaitez conserver le rel, il suffit de retirer le return null;.

+0

Merci, cela semble un peu plus complexe mais ça a marché. En regardant les autres réponses, celles-ci devraient aussi fonctionner. – Lucian

+0

@Lucian - De rien. Cela semble probablement complexe parce que c'est sur une ligne. Briser le corps de la fonction avec des sauts de ligne, et il semble probablement un peu plus propre. Si vous ne cherchiez pas à vous débarrasser des attributs 'rel', je le changerais [à ceci] (http://jsfiddle.net/patrick_dw/xnyr5/1/):' $ ('a [rel]') .attr ('href', function() {return this.rel;}) ' – user113716