Prestashop 1.7->产品详细信息jquery未定义

时间:2020-07-20 10:08:48

标签: javascript jquery prestashop

导航到产品详细信息页面时,出现控制台错误

“未捕获的ReferenceError:未定义jQuery”

仅在这些页面上。我尝试通过head.tpl文件和javascript.tpl文件添加依赖项,但到目前为止没有成功。

示例网址:https://naturata.pt/en/mesh/27-379-teste.html#/6-color-brown/43-size-34

1 个答案:

答案 0 :(得分:0)

如果仔细检查您的错误,您会发现在行1562上正在发生这种情况。

您正在尝试使用那里的jquery对象将数据发送到您的Google Analytics(分析)。但是,这甚至没有被使用。您最好将其从产品详细信息模板中删除。

<script type="text/javascript">
    jQuery(document).ready(function(){
    var MBG = GoogleAnalyticEnhancedECommerce;
    MBG.setCurrency('EUR');
    MBG.addProductDetailView({
        "id":0,
        "name":"null",
        "category":"null",
        "brand":"",
        "variant":"null",
        "type":"typical",
        "position":"0",
        "quantity":1,
        "list":"product",
        "url":"",
        "price":"0.00"
   });
});
</script>

如果您真的希望它能正常工作,则可能需要将jquery转移到标头,以便在此脚本运行之前将其加载。

您可能要做的另一件事是禁用分析模块。由于没有使用它,这就是导致问题的原因。

或查看呈现该代码的模型中的函数以尝试解决该问题。您可以将其从使用Jquery文档更改为使用js文档的本机文档。

因此,您可以将其更改为:

document.addEventListener("DOMContentLoaded", function(event) { 
  var MBG = GoogleAnalyticEnhancedECommerce;
    MBG.setCurrency('EUR');
    MBG.addProductDetailView({
        "id":0,
        "name":"null",
        "category":"null",
        "brand":"",
        "variant":"null",
        "type":"typical",
        "position":"0",
        "quantity":1,
        "list":"product",
        "url":"",
        "price":"0.00"
   });
});

您可以在此处了解更多信息:$(document).ready equivalent without jQuery