如何在我的 SPA 的特定页面上隐藏 Facebook 客户聊天插件?

Posted

技术标签:

【中文标题】如何在我的 SPA 的特定页面上隐藏 Facebook 客户聊天插件?【英文标题】:How to hide facebook customer chat plugin on specific pages of my SPA? 【发布时间】:2019-06-07 19:57:57 【问题描述】:

我们有带有 facebook 客户聊天插件的 SPA(单页应用程序,生成的 nuxtjs 项目)。

此插件在页面刷新期间初始化,并在路由器加载视图后保留在站点上。

我们希望仅在特定页面上显示此插件,例如登录页面、支持页面、支付页面并隐藏在其余页面上。

在初始加载期间,插件会创建 iframe,其中包含所有魔法,并且此 iframe 在 SPA 导航期间保持不变。

问题是 - 如何在特定页面上正确隐藏 Facebook 客户聊天插件?销毁iframe?一些未记录的设置?另一个魔法?

谢谢

【问题讨论】:

你试过隐藏.fb-customerchat元素吗?通常这些 Facebook 社交插件会渲染用于嵌入它们的元素的 inside,iframe 应该作为其后代插入。 最后我做到了。我在不需要聊天插件的页面上的这个元素上设置了 display:none。 【参考方案1】:

- 小部件初始化后,您可以通过 window.FB.CustomerChat.show()window.FB.CustomerChat.hide() 方法轻松控制可见性

【讨论】:

这应该被接受为答案!谢谢。 这是真的。但是,它并没有隐藏将单独存在的问候语。我还没有找到关于我如何隐藏它的文档。

以上是关于如何在我的 SPA 的特定页面上隐藏 Facebook 客户聊天插件?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 _Layout.cshtml 页面隐藏页面上的特定元素

如何在我的 aspx 页面上显示变量值背后的代码

在特定子页面上隐藏 Ionic TabBar (IONIC 3)

在NodeNS中,如何重定向到单页面应用程序中的特定页面?

如何使用 colorbox 在我的页面上显示隐藏的 div 而无需硬编码?

即使我不在页面上,如何每天在特定时间在我的页面上运行 youtube 视频?