首页 > 解决方案 > 显示/隐藏 Facebook 聊天插件

问题描述

这个问题之前已经在其他论坛上提出过,但看不到能够找到答案,所以再次询问以防万一任何人都可以提供帮助。

我的网站 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>

标签: facebookfacebook-appsfacebook-chatbotfacebook-chat

解决方案


FB.Event.subscribe('customerchat.dialogHide',
  FB.CustomerChat.hide());
};

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

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

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


推荐阅读