javascript - Facebook 分享 : preview window is empty first time Share is clicked

标签 javascript facebook-graph-api facebook-like

我的网站上有一个共享按钮(图像)。单击后,以下 js 将创建共享预览:

window.open('https://www.facebook.com/sharer/sharer.php?u=www.mysite.com/thepage/', 'facebook-share-dialog', 'width=626,height=436');

第一次在页面上单击“共享”按钮时,预览为空白。它甚至不显示网址。如果共享窗口关闭,并且再次单击“共享”按钮,那么它就可以正常工作。

这些页面是用户生成的,因此不可能浏览每个页面并确保每个共享按钮已被单击一次,也不可能对每个页面进行 linter。

最佳答案

我遇到了同样的问题,并在 Facebook 的文档中找到了解决方案:

Use og:image:width and og:image:height Open Graph tags

Using these tags will specify the image to the crawler so that it can render it immediately without having to asynchronously.

只需确保您的开放图形标签包括宽度和高度以及图像源。您的元标记应如下所示:

<meta property="og:image" content="...image.jpg" />
<meta property="og:image:width" content="500" />
<meta property="og:image:height" content="600" />

关于javascript - Facebook 分享 : preview window is empty first time Share is clicked,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20018304/

相关文章:

javascript - 一行中有多个图文

JavaScript - reduce() 函数的示例

javascript - RequestAnimationFrame - 我应该使用 DOMHighResTimeStamp 参数吗?

c# - 发布对 Facebook 对话的回复

php - 如何使用 Facebook API 获取好友的姓名

android - 使用适用于 Android 的 Facebook SDK 登录的 Facebook Like 按钮

javascript - Facebook Like 按钮错误 : Message Failed: This message contains content that has been blocked by our security systems

javascript - 如何在加载 html 之前运行 &lt;script&gt; 标记

android - NullPointer 试图在没有对话的情况下在 Facebook 上发布

html - 如何结合来 self 的网站和 Facebook 本身的 Facebook 点赞