アセットフォルダから画像を動的に取得しようとしています。私のコードのプロセスは、要素がクリックされると、その親要素は、子要素IDによって渡された名前に従って背景を変更するということです。私はtheme.js.liquidために私theme.jsの名前を変更したShopifyのjQueryコード内の画像のアセットURLパスを表示する方法
$(".flex-item").click(function() {
// add class to div while removing it from others with same class
$(".flex-item").removeClass("expand").addClass("vertical"); //declare the class of the element, remove expand class from all
$(this).addClass("expand").removeClass("vertical"); //add class to clicked element
var changebackground = $(this).attr('id'); //get id of clicked element
$("#vaq-key-features-img").css({
"background-image": "url({{ '"+changebackground+".jpg' | asset_url }})",
});
});
:以下の私のコードを参照してください。 URLが返されていますが、jquery変数が文字列として読み込まれていて、値が表示されていません。下記を参照してください:
<div class="container" id="vaq-key-features-img" style="background-image: url(https://cdn.shopify.com/s/files/1/1392/6087/t/3/assets/%22+changebackground+%22.jpg?8438893007511141278);"></div>
何かが欠けていますか?
ありがとう@Shiladitya、代替ソリューションが実行されていますが、まだShopifyアセットURLの正しいパスが表示されていません。画像の名前だけでなく、画像の正しいパスフォルダではなく、ウェブサイトのドメイン名を指定するだけです。 '
@ajnoguerraあなたはそれをどのような解決策ですか?最初か二番目? 'asset_url'には何が入っていますか? – Shiladitya
2番目。これは 'https:// www.websitename.com/key-feature-01.jpg'を実行したときに背景としてスタイル属性内にこのパスを表示しますが、これは間違ったものです。 ShopifyアセットURLパスには、通常、次のようなものが表示されます。 '//cdn.shopify.com/s/files/1/392/6087/t/3/assets/vaquform-carousel-imageboxes-01_1366x.jpg?15627163126536874031' –