0

我正在尝试使用外部 JS 文件中的 javascript 将 fancybox 3 加载到我的 prestashop 产品图像中,但我在控制台中收到此错误:未捕获的类型错误:无法读取未定义的属性“打开”。

我一直在本地测试这段代码,它工作正常。

<a id="fancyboxlauncher" href="javascript:void(0)" >Click me</a>

Javascript

$('#fancyboxlauncher').on('click', function() {
'use strict';
  $.fancybox.open([
    {
      src  : '{$image.bySize.home_default.url}',
      opts : {
        caption : '{$product.description_short nofilter}'
      }
    }
  ], {
    loop : false,
    hash : "test"
  });

});
4

2 回答 2

0

很明显,fancybox js 文件没有加载,因此$.fancyboxundefined错误消息cannot read property 'open' of undefined

编辑:如果您想简单地启动其他图像组,您可以执行以下操作:

$('#fancyboxlauncher').on('click', function() {
    $('[data-fancybox="quick-view"]').eq(0).trigger('click');
});
于 2017-04-21T09:02:19.570 回答
0

请使用这个:

{literal}
$('#fancyboxlauncher').on('click', function() {
'use strict';
  $.fancybox([
    {
      src  : "{/literal}{$image.bySize.home_default.url}{literal}",
      opts : {
        caption : "{/literal}{$product.description_short nofilter}{literal}"
      }
    }
  ], {
    loop : false,
    hash : "test"
  });
});
{/literal}
于 2017-04-20T21:51:31.727 回答