0

我有一个包含 Facebook 和 Twitter 共享按钮的网站。在 Chrome 中加载时,我看到两者,在 IE 和 Firefox 中加载时,我只看到 Facebook 共享。这些按钮使用直接从两个开发者网站生成的代码。具体来说,我生成的推特代码是:

<a id="someID" class="twitter-share-button" data-url="http://correct.url" data-via="" data-text="Some site specific text" href="https://twitter.com/share">Tweet</a>
<script type="text/javascript">
!function (d, s, id)
{ var js, fjs = d.getElementsByTagName(s)[0], p = /^http:/.test(d.location) ? 'http' : 'https'; if (!d.getElementById(id)) { js = d.createElement(s); js.id = id; js.src = p + '://platform.twitter.com/widgets.js'; fjs.parentNode.insertBefore(js, fjs); } } (document, 'script', 'twitter-wjs');
</script>

在所有浏览器的控制台中,我得到:

从http://platform.twitter.com收到对象类型的消息,需要一个字符串

但是 chrome 和 safari 仍然可以加载 Twitter 按钮。(也许他们会自动将返回的对象转换为字符串)

更多细节:

  • 这些按钮是通过 AJAX 加载的。我twttr.widgets.load();在每次 Ajax 调用结束时调用(除了FB.XFBML.parse();)。
  • 我已经从浏览器中删除了所有插件/插件,并且没有看到任何变化。
  • 使用 ASP.NET 4.5
  • 检查 DOM 我看到了带有 display:hidden 的 twitter iframe

任何帮助是极大的赞赏。

4

1 回答 1

0

您可能已经存在导致冲突的共享功能。

我有完全相同的错误消息,尝试了一堆不起作用的东西,最终禁用了页面上的其他共享按钮,这解决了我的所有问题。

于 2015-06-02T23:41:45.943 回答