あなたのコードでimgs
は、DOM 要素ではなく、jQuery オブジェクトです。.src
そのため、プロパティ はありません。
.src
その jQuery オブジェクトで画像のプロパティが必要な場合は、次のいずれかを実行する必要があります。
var src = imgs.attr("src");
または、jQuery オブジェクトから最初の DOM 要素を取得します。
var src = imgs[0].src
また、コードには他にもいくつかのエラーがあります。src
クリックされたすべての要素の値を配列に蓄積したい場合は、次のようにすることができます。
$('#mainContainerPortfolio #activateBox').click(function(){
var clickedAlt = $(this).children('img').attr('alt');
var imgs = $('#mainContainerPortfolio #projectImg[alt="'+clickedAlt+'"]');
var srcs = imgs.map(function(index, elem) {
return(elem.src);
}).get();
console.log(srcs);
});
セレクターにも問題があると思います.1つの要素しか持つことができid="projectImg"
ないため、属性 [alt="'+clickedAlt+'"] を使用する理由はないはずです。
同様に、の ID を持つオブジェクトは 1 つしか存在できないため、'#mainContainerPortfolio #activateBox'
を に変更できます。'#activateBox'
activateBox