在Shopify中的产品模板中编写jQuery

时间:2017-10-20 20:27:09

标签: javascript jquery shopify liquid

我试图在Shopify中获取产品的变体ID并将其传递给jQuery。但我无法在(Sections / product-template.liquid)中编写脚本。 浏览器会出现' Uncaught ReferenceError错误:jQuery未定义'

我在 product-template.liquid 的末尾写了这段代码。

<script>
jQuery(function($)
{
    $current_variant_id = {{ product.selected_variant.id }};
    $interval = setInterval(function()
    {
       if( $( '.product-single__thumbnail-item.slick-slide.slick-active.is-active' ).length > 0 )
       {
           if( !($( '.product-single__thumbnail-item[data-variant="'+$current_variant_id+'"]' ).hasClass('is-active')) )
           {
               $( '.product-single__thumbnail-item.slick-slide.slick-active.is-active' ).removeClass('is-active');
               $( '.product-single__thumbnail-item[data-variant="'+$current_variant_id+'"]' ).addClass('is-active');
           }
           clearInterval( $interval );
       }
    },1);
});
</script>

我在这里做错了什么?任何指导将不胜感激。谢谢!

2 个答案:

答案 0 :(得分:1)

您可能没有在商店网站上使用jQuery。最简单的方法是编辑theme.liquid以包含每个页面的jQuery。只需在script标记正常之前将</head>标记放在右下方:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

答案 1 :(得分:0)

对此的简单回答是确保您的Javascript库在head元素中的theme.liquid中加载。这可以确保您可以使用该库中的$变量。