华丽的弹出式 Facebook 分享按钮仅在第二次点击时起作用

Magnific popup facebook share button works just on second click

我有一个带有宏伟弹出窗口的画廊,其中有一个作为 titleSrc 的共享按钮。 这是在单击按钮时调用的:

function callFacebook(item){
  console.log(item);
  FB.ui({
    method: 'feed',
    link: item,
    caption: 'Die besten Party-Pics bei party-news.de',
  }, function(response){
    console.log(response);
  });
}

这是很棒的弹出调用:

$('.gallery').magnificPopup({
  delegate: 'a', // child items selector, by clicking on it popup will open
  type: 'image',
  gallery: {
    enabled:true,
    tCounter: '%curr% von %total%',
    preload:false
  },
  image: {
    verticalFit:false,
    titleSrc:function(item){
        var image = item.el.attr("href");
        return '<a class="shareFacebook" onclick="callFacebook(\''+image+'\')" target="_blank"><i class="fa fa-facebook-official"></i>&nbsp;Foto teilen</a>';
    }
  },
    tClose: 'Schliessen',
    tLoading: 'Lade Bild...',
  // other options
});

我正在获取点击图像的 href 并将其传递给 callFacebook 函数。我第一次点击分享按钮时,它只显示标准 og:tags。当我关闭此 window 并再次单击共享按钮时 – 它起作用了。该图像显示在共享对话框中。有什么想法吗?

因为我没有看到所有的代码,所以很难确切地说出发生了什么,要么创建一个小的 jsbin/jsfiddle,要么我可以尝试猜测 :)

确保您的初始化函数在 jQuery 就绪函数中,如下所示:

$(document).ready(function(){
  $('.gallery').magnificPopup({});
  //....
});

希望对您有所帮助!