this's my code
<div class="portfolio-project">
<img src="https://picsum.photos/id/31/800/800" alt="p1">
<img src="https://picsum.photos/id/32/800/800" alt="p2">
<img src="https://picsum.photos/id/33/800/800" alt="p3">
<img src="https://picsum.photos/id/34/800/800" alt="p1">
<img src="https://picsum.photos/id/35/800/800" alt="p2">
<img src="https://picsum.photos/id/36/800/800" alt="p3">
</div>
i want like this
<div class="portfolio-project">
<div class="p1">
<img src="https://picsum.photos/id/31/800/800" alt="p1">
<img src="https://picsum.photos/id/34/800/800" alt="p1">
</div>
<div class="p2">
<img src="https://picsum.photos/id/32/800/800" alt="p2">
<img src="https://picsum.photos/id/35/800/800" alt="p2">
</div>
<div class="p3">
<img src="https://picsum.photos/id/33/800/800" alt="p3">
<img src="https://picsum.photos/id/36/800/800" alt="p3">
</div>
</div>
I try apply my code as : jQuery add alt tag to images with same src but i encountered a problem, my code have multi-wrap like this.
$(function($) {
$("img").each(function(i, y) {
var src = $(y).attr('src');
var alt = $(y).attr('alt');
$("img[alt='" + alt + "']").wrapAll('<div class="' + alt + '"></div>');
});
});
img {
width:50px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="portfolio-project">
<img src="https://picsum.photos/id/31/800/800" alt="p1">
<img src="https://picsum.photos/id/32/800/800" alt="p2">
<img src="https://picsum.photos/id/33/800/800" alt="p3">
<img src="https://picsum.photos/id/34/800/800" alt="p1">
<img src="https://picsum.photos/id/35/800/800" alt="p2">
<img src="https://picsum.photos/id/36/800/800" alt="p3">
</div>
how to fix it ?