この例で .zoom をクリックすると、20 (ループ内のアイテムの量) の .big_image div が挿入されます。クリックしているアイテムに関連して、1つ挿入したいだけです。
$('.main img').each(function() {
var img = this;
$('.zoom').click(function() {
$(this).after('<div class="big_image"><img src="'+$(img).attr('src')+'"></div>');
});
});
ここでスクリプトを単純化しました。理想的には、質問に関係のない他のことが起こっているので、クリック機能を変更する方法を知りたいだけです(可能であれば)。ありがとう!
編集:ここでの作業例。
ズーム ボタンは、少なくともギャラリーの最初の 2 つの画像 (左上隅) に表示する必要があります。紛らわしい場合は、ズーム ボタンが非常に長い/背の高い画像にのみ表示されるようにしようとしています。また、 setClass 関数を分割する必要があることも認識していますが、その方法をまだ学んでいません:)