【问题标题】:Show / Hide Facebook Chat Plugin显示/隐藏 Facebook 聊天插件
【发布时间】:2020-06-13 03:04:26
【问题描述】:

这个问题以前在其他论坛上被问过,但看不到能够找到答案,所以再问一次,以防有人能提供帮助。

我的网站 www.tiqy.com 上有 Facebook 聊天插件,它可以与以下代码配合使用。不起作用的部分是“FB.Event.subscribe('customerchat.dialogHide',FB.CustomerChat.hide());”。当有人关闭聊天时,我希望整个聊天图标消失。我已阅读并尝试遵循 facebook 文档,但它似乎不起作用。

 window.fbAsyncInit = function () {
            FB.init({
                status: false,
                cookie: false,
                xfbml: false,
                version: 'v6.0'
            });
            FB.Event.subscribe('customerchat.dialogHide',
                FB.CustomerChat.hide());

        };

        (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 = 'https://connect.facebook.net/en_US/sdk/xfbml.customerchat.js';
            fjs.parentNode.insertBefore(js, fjs);
        }(document, 'script', 'facebook-jssdk'));</script>

【问题讨论】:

  • 我认为他们在文档中提供的语法不正确。 FB.Event.subscribe('customerchat.dialogHide', callback());——这不应该是callback(),因为那会立即调用该函数;但只有 callbackreference 传递给函数。所以试试FB.Event.subscribe('customerchat.dialogHide', FB.CustomerChat.hide);
  • 非常感谢。代码现在可以工作了。我应该意识到这一点。对此,我真的非常感激。我不知道如何将您的评论标记为答案,请告诉我,我会这样做。
  • 我添加了一个答案,请随时将其标记为正确的解决方案。

标签: facebook facebook-apps facebook-chatbot facebook-chat


【解决方案1】:
FB.Event.subscribe('customerchat.dialogHide',
  FB.CustomerChat.hide());
};

他们在文档中提供的示例语法不正确。

FB.Event.subscribe('customerchat.dialogHide', callback()); – 这不应该是callback(),因为那会立即调用该函数;但只有 callback 来传递对函数的引用。

所以试试FB.Event.subscribe('customerchat.dialogHide', FB.CustomerChat.hide);

【讨论】:

    猜你喜欢
    • 2019-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多