Я хотел бы динамически добавлять Tag во все Изображения в конкретный div с атрибутом rel-Attribute.
например, мой код в HTML
<div id="content">
<img src="images/1.jpg" alt="Pic One" />
<img src="images/2.jpg" alt="Pic Two" />
(...)
</div>
После функции JavaScript это должно быть примерно так:
<div id="content">
<a href="images/1.jpg" rel="prettyPhoto"><img src="images/1.jpg" alt="Pic One"/></a>
<a href="images/2.jpg" rel="prettyPhoto"><img src="images/2.jpg" alt="Pic One"/></a>
(...)
</div>
Есть ли подходящий способ сделать это? Возможно, с регулярным выражением?
Попробуй это:
$('#content img').each(function(){
$(this).wrap('<a href="'+$(this).attr('src')+'" rel="prettyPhoto"></a>');
});
wrap
в jQuery, кажется полезным!
Только JavaScript может это сделать. Сначала выберите все изображения внутри div:
var images=document.getElementById("content").querySelectorAll("img");
Затем вам нужно будет перебирать каждый из них и редактировать его:
for (var I=0; I<images.length; I++){
images[I].outerHTML="<a href='"+images[I].src+"' rel='prettyPhoto'>"+images[I].outerHTML+"</a>";
}
Это должно сделать это.
$("#content > img").each(function(){
$(this).wrap("<a>");
});