一連の画像の SRC を検索して、文字列に一致するものをすべて返そうとしています。私は非常に制限的な電子商取引システムを構築しています。画像をそのバリアントにリンクする方法がないため、すべての画像のリストを検索して、一致した src を返す必要があります。(顧客が WYSIWYG を使用して新しい色を追加できるように、IF ステートメントのラックも使用しています)
jQuery(document).ready(function($) {
$('#product-variants-option-0').change(function() {
var select_value, keyword, new_src;
select_value = $(this).find(':selected').val();
if (select_value == "Kelly Green") { keyword = "kelly"; };
if (select_value == "Navy") { keyword = "navy"; };
if (select_value == "Gunmetal Heather") { keyword = "gunmetal"; };
if (select_value == "Olive") { keyword = "olive"; };
if (select_value == "Cocoa") { keyword = "cocoa"; };
if (select_value == "Black") { keyword = "black"; };
if (select_value == "Charcoal") { keyword = "charcoal"; };
if (select_value == "Dark Teal") { keyword = "teal"; };
if (select_value == "White") { keyword = "white"; };
if (select_value == "Black") { keyword = "black"; };
if (select_value == "Garnet") { keyword = "garnet"; };
if (select_value == "Charcoal Heather") { keyword = "charcoal-heather"; };
// Find the image using that `src`, note that we concatenate the value
// from `keyword`, rather than having it in a literal.
var new_src = $('#preload img[src*=' + keyword + ']').attr('src');
var large_src = new_src.replace('medium','large');
// Set the image's source.
$('div.image img').attr('src', large_src);
});
});
これは、1つの画像に対して完全に機能します。しかし、私は必要です
var new_src = $('#preload img[src*=' + keyword + ']').attr('src');
配列として。次に、最初に一致した SRC を
$('div.image img').attr('src', large_src);
その後、残りのすべてを別のdivに
$('div.thumbs img').attr('src', new_src);