繁体   English   中英

加载jquery ajax后未显示FB.ui对话框

[英]FB.ui dialog not showing after loading jquery ajax

这是脚本

window.fbAsyncInit = function() {
            FB.init({
                appId      : 'xxxxxx',
                xfbml      : true,
                version    : 'v2.1'
            });

            $.ajax({
                url: 'save.php',
                dataType: 'JSON',
                method: 'POST',
                data: {image_data: img_src, save2server: 'y'},
                success: function(response){
                    FB.ui({
                        method: 'feed',
                        link: response.url,
                    }, function(r){

                    });
                }
            });
        }

ajax请求成功完成,我将其处理,但对话框未显示..任何提示?

您是否包括Facebook SDK脚本? 如果不是,请在打开body标签之后将其包括在内:

<script>
(function(d, s, id){
     var js, fjs = d.getElementsByTagName(s)[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement(s); js.id = id;
     js.src = "//connect.facebook.net/en_US/sdk.js";
     fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'facebook-jssdk'));
</script>

祝好运!

对于有相同问题的任何人,这是答案: https : //stackoverflow.com/a/7666936/1756281

必须在Safari中用户发起的操作(单击)上调用FB.login或FB.ui方法,以使新窗口/弹出窗口/ iframe由FB.UIServer呈现。 如果尝试在网络回调事件上调用这些方法,它将被阻止,并且将发生您描述的异常

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM