1

ユーザーが製品ページを下にスクロールしたときに、カートに追加スティッキー バーを実装しようとしています。

製品の「デフォルト」値のみが機能することを除いて、すべてが正常に機能しているようです。色は赤、サイズは大を選択し、スティッキーな [カートに入れる] をクリックすると、その製品のデフォルト値である中黒のカートにリダイレクトされます。

これを解決する方法に頭を悩ませることはできません。

これが私のコードです。

<section class="productStickyAdd fading" id="stickyIckyStuff">
<div class="productStickyAdd-container">
    <div class="sticky-labeling">
        <span class="stickyTitle">
            {{product.title}}
        </span>
        <span class="stickyPrice">
            {{#or customer (if theme_settings.restrict_to_login '!==' true)}}
            {{> components/products/price price=product.price schema_org=schema}}
            {{else}}
            {{> components/common/login-for-pricing}}
            {{/or}}
        </span>
    </div>
    <form class="form" method="post" action="{{product.cart_url}}" enctype="multipart/form-data"
          data-cart-item-add>
        <input type="hidden" name="action" value="add">
        <input type="hidden" name="product_id" value="{{product.id}}"/>
        <div data-product-option-change style="display:none;">
            {{#each product.options}}
            {{{dynamicComponent 'components/products/options'}}}
            {{/each}}
        </div>
        {{#if product.can_purchase}}
            {{> components/products/add-to-cart}}
        {{/if}}
        {{#if product.out_of_stock}}
        {{#if product.out_of_stock_message}}
            {{> components/common/alert-error product.out_of_stock_message}}
        {{else}}
            {{> components/common/alert-error (lang 'products.sold_out')}}
        {{/if}}
        {{/if}}
    </form>
</div>

標準の CTA と同じ値を使用しています。

        <form class="form" method="post" action="{{product.cart_url}}" enctype="multipart/form-data"
          data-cart-item-add>
        <input type="hidden" name="action" value="add">
        <input type="hidden" name="product_id" value="{{product.id}}"/>
        <div data-product-option-change style="display:none;">
            {{#each product.options}}
            {{{dynamicComponent 'components/products/options'}}}
            {{/each}}
        </div>

でもどうにか動的コンポーネントを上位のオリジナル商品オプションで選んだJSとリンクさせないといけないのかな?

このdivを削除しようとしたとき:

       <div data-product-option-change style="display:none;">
        {{#each product.options}}
        {{{dynamicComponent 'components/products/options'}}}
        {{/each}}
    </div>

カートにリダイレクトされることさえありませんが、div がある場合は、「デフォルト」設定でカートにリダイレクトされます。

誰でもこれを経験したことがありますが、本当に感謝しています。ここでJSが必要なのか、それなしで処理できるのかはよくわかりません。

ありがとうございました。良い1日を!

4

1 に答える 1