是什么导致fancybox在重新粉刷页面后无法正确加载?

时间:2019-07-09 00:12:33

标签: jquery fancybox

请有人看看我的jquery脚本,为什么要打架?在借助swup启用页面转换后,fancybox画廊停止了正常工作,单击图像使其变为全屏,而不是打开fancybox图像叠加层。但有时在按下后,fancybox会加载。其他时间,返回按钮无效,我必须刷新页面。问题页面示例:https://www.corebots.design/photologue/gallerylist/gallery/rohace-mountains/

试图像其他脚本一样将fancybox函数包装为“ swup:contentReplaced”,但是它不起作用。

function init() {
    if (document.querySelector('#fancybox')) {
        (function( $ ) {
          $(function() {
                $("#fancybox").fancybox();
          });
        })(jQuery);
    }
}

// initialize swup for pages transitions
const swup = new Swup();


swup.on('contentReplaced', init);

// trying to reload fancybox as suggested by swup doc https://swup.js.org/getting-started/reloading-javascript
document.addEventListener('swup:contentReplaced', function () {

(function( $ ) {
          $(function() {
                $("#fancybox").fancybox();
          });
        })(jQuery);

});

1 个答案:

答案 0 :(得分:0)

唯一可能造成干扰的是history功能,您可以通过设置以下功能来禁用它:

$("#fancybox").fancybox({
  history: false
});