2009-01-13 4 views
0

Je voudrais ajouter un chemin "images /" à toutes les balises img dans mon fichier html. Est-ce possible et si je peux réaliser cela?Existe-t-il un moyen d'ajouter un chemin à tous les attributs src des tags d'image?

+0

Pourquoi? La réponse pourrait dépendre de ce que vous essayez de faire. –

+0

Si vos chemins d'images sont interrompus sans Javascript, c'est un bug que vous devez corriger ailleurs. L'utilisation de javascript ne résout pas le problème, mais ajoute du poids mort à la page dont vous n'avez pas besoin. – roborourke

+0

Oui, ce n'est pas la meilleure façon de le faire ... mais peut-être une expérience interessante :) – tanathos

Répondre

1

Je pense que cela va bien fonctionner:

$("img").each(function() { 
    $(this).attr("src", "images/" + $(this).attr("src")); 
}); 

Notez que cela n'a de sens que si vous avez déjà un chemin relatif à vos images.

1

De quoi? La recherche/remplacement dans le bloc-notes est-il suffisant?

+0

Astuce ici: balises de questions;) – ohnoes

1

Je suis sûr qu'il existe une façon spécifique à jQuery de le faire, mais cette boucle JS de base le fera. Une sorte de chose étrange à faire après le chargement de toutes les images d'une URL différente déjà.

var a = document.getElementsByTagName('img'); 

for(var i=0, n=a.length; i<n; i++) 
{ 
    a[i].src = 'images/'+a[i].src; //see note 
} 

Note: en pratique, je pense que vous aurez besoin d'un regex remplacer pour insérer les 'images /' string ici

1

Essayez ceci:

$("img").attr("src", function (val) { 
      return "images/" + val; 
     }) 
+0

ouais ce serait ça :) un de ces jours je vais devoir commencer prendre soin de jquery – annakata

Questions connexes