如何select第n张图片Javascript
How to select the n-th picture in Javascript
I am trying to change the some code in Javascript for my Shopify store, what I am trying to do is when a color option of a product is selected, the featured images changes to the second or third变体的图像(每个变体有 5 张图像),现在,正如您从代码中看到的那样,它仅更改为特色图像,如果您能帮助我,我将不胜感激,在此先感谢!
/**
* Trigger event when variant image changes
*
* @param {object} variant - Currently selected variant
* @return {event} variantImageChange
*/
_updateImages: function(variant) {
var variantImage = variant.featured_image || {};
var currentVariantImage = this.currentVariant.featured_image || {};
if (!variant.featured_image || variantImage.src === currentVariantImage.src) {
return;
}
this.$container.trigger({
type: 'variantImageChange',
variant: variant
});
},
/**
如果你仅仅根据数组定位就知道你需要哪张图片,代码会非常简单:
var all_images = document.querySelectorAll(some_css_selector_string);
var image_i_want = all_images[some_index];
困难的部分是知道你想要哪个数组索引 - 以及每个变体的特色图片(如果你已经分别为每个变体设置特色图片)应该你正确的图像信息。 (您可能还想在 Shopify 后台仔细检查您的产品,以确保每个变体都有合适的图像集)如果这仍然不起作用,您可能需要向该代码添加一个 console.info(variant)
,以便您可以检查可用信息,以便您可以根据变体实际代表的内容做出有意义的决定。
例如,如果您的图像命名方案与变体选项的名称一致,则可以使用 variant.option1
/ variant.option2
/ variant.option3
中的值 assemble 预期的图像名称并根据该名称更新图像标签。
(顺便说一句:实际更新图像的代码可能在监听 'variantImageChange' 事件的函数中 - 您提供的代码不会直接更改页面上的任何内容)
希望对您有所帮助!
I am trying to change the some code in Javascript for my Shopify store, what I am trying to do is when a color option of a product is selected, the featured images changes to the second or third变体的图像(每个变体有 5 张图像),现在,正如您从代码中看到的那样,它仅更改为特色图像,如果您能帮助我,我将不胜感激,在此先感谢!
/**
* Trigger event when variant image changes
*
* @param {object} variant - Currently selected variant
* @return {event} variantImageChange
*/
_updateImages: function(variant) {
var variantImage = variant.featured_image || {};
var currentVariantImage = this.currentVariant.featured_image || {};
if (!variant.featured_image || variantImage.src === currentVariantImage.src) {
return;
}
this.$container.trigger({
type: 'variantImageChange',
variant: variant
});
},
/**
如果你仅仅根据数组定位就知道你需要哪张图片,代码会非常简单:
var all_images = document.querySelectorAll(some_css_selector_string);
var image_i_want = all_images[some_index];
困难的部分是知道你想要哪个数组索引 - 以及每个变体的特色图片(如果你已经分别为每个变体设置特色图片)应该你正确的图像信息。 (您可能还想在 Shopify 后台仔细检查您的产品,以确保每个变体都有合适的图像集)如果这仍然不起作用,您可能需要向该代码添加一个 console.info(variant)
,以便您可以检查可用信息,以便您可以根据变体实际代表的内容做出有意义的决定。
例如,如果您的图像命名方案与变体选项的名称一致,则可以使用 variant.option1
/ variant.option2
/ variant.option3
中的值 assemble 预期的图像名称并根据该名称更新图像标签。
(顺便说一句:实际更新图像的代码可能在监听 'variantImageChange' 事件的函数中 - 您提供的代码不会直接更改页面上的任何内容)
希望对您有所帮助!