2017-10-20 1 views
0

Ich versuche, Variante ID des Produkts in Shopify zu holen und es an jQuery übergeben. Aber ich kann kein Skript schreiben (Sections/product-template.liquid). Browser gibt Fehler von 'Uncaught Reference: jQuery ist nicht definiert'Schreibe jQuery in die Produktvorlage in Shopify

Ich habe diesen Code am Ende der Produkt-template.liquid geschrieben.

<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> 

Was mache ich hier falsch? Jede Anleitung würde geschätzt werden. Vielen Dank!

+0

welcher Reihenfolge Sie Ihre Skripte laden? – kemotoe

+0

Ich schreibe dieses Skript in .liquid-Datei. Ordnet man die Dinge hier? Weil es in Wordpress perfekt funktionieren würde! –

+0

Überprüfen Sie, ob jQuery vor dem Skript geladen oder zuvor hinzugefügt wurde ... –

Antwort

0

Die einfache Antwort darauf ist, dass Sie sicherstellen, dass Ihre Javascript-Bibliothek in theme.liquid im head-Element geladen ist. Dies stellt sicher, dass Sie Ihre $ Variable aus dieser Bibliothek verwenden können.

0

Es ist wahrscheinlich, dass Sie jQuery nicht auf Ihrer Shop-Website verwenden. Der einfachste Weg ist Bearbeiten Sie Ihre theme.liquid um jQuery für jede Seite zu enthalten. Einfach ein script Tag unten rechts vor </head> Tag ist ok:

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

Verwandte Themen