推特关注按钮无法在谷歌浏览器中呈现



我使用twitter按钮资源为follow按钮生成代码,并将其添加到我正在工作的网站的必需页面中。代码为:

<a href="https://twitter.com/daniduffymakeup" class="twitter-follow-button" data-show-count="false" data-size="large">@daniduffymakeup</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>

当在Safari中查看页面时,按钮样式的JavaScript似乎执行得很好,因为按钮按预期样式设置,但在Chrome中,每次都会显示链接文本,只有当通过访问另一个链接并向后导航重新加载页面时,链接文本才会被设置为按钮样式。刷新页面会再次清除按钮样式,有时甚至无法呈现纯链接文本。

是什么导致了这种行为?我曾尝试将JavaScript函数移动到页面的head元素中,但没有成功。

您似乎已经去掉了脚本标记,添加了这些标记后,效果很好。

如果你在本地测试它,尽管图像没有出现(这可能是问题所在)——只有当代码托管在实时服务器上时,它才会出现。

如果你愿意的话,你可以将脚本标记分离到头部,如果你有多种不同类型的twitter按钮,你只需要一次脚本。

<a href="https://twitter.com/daniduffymakeup" class="twitter-follow-button" data-show-count="false" data-size="large">Follow @daniduffymakeup</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>

还要禁用任何插件,特别是Disconnect,因为这些插件通常会阻止包含跟踪功能的动态社交网络插件。

如果您使用AVG,您还需要取消检查块广告和跟踪器扩展

我遇到了类似的问题。我的问题是Follow按钮只显示在容器div下面的chrome中。解决方案是添加

position: relative;

到Follow按钮的iframe。

最新更新