2012-07-06 133 views
2

当复制和粘贴了一个Twitter按钮下面的代码到一个文本文件:Twitter的按钮无法加载资源文件://platform.twitter.com/widgets.js

<a href="https://twitter.com/share" class="twitter-share-button" data-via="jpkcambridge">Tweet</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> 

我得到一个JavaScript错误说'加载资源文件失败://platform.twitter.com/widgets.js'

这是什么原因造成的?以为我应该能够从Twitter上复制和粘贴代码。

回答

3

您正试图在本地文件中加载无协议URL。 Twitter通过//platform.twitter.com/widgets.js提供脚本,这在本地转换为file:协议。这是提供内容的最佳实践(它不会在IE中产生令人讨厌的混合内容警告),但只是在本地文件中不起作用。

尝试将脚本的该行更新为https://platform.twitter.com/widgets.js。这应该有助于您在本地进行测试一旦你完成测试,将其翻转回无协议结构。

0

您确定您输入的代码正确吗? 尝试使用如下这样的按钮的直接链接目标: 只需将URL更改为您要指定的任何位置,然后将用户名更改为您使用的任何用户名。 此代码是从网站的代码:

<a href="https://twitter.com/share" class="twitter-share-button" data-url="http://anawesomesite.html" data-text="super site of awesome" data-via="Username" data-related="face" data-hashtags="emplosion">Tweet</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> 
0

应该在src是 “https://开头......”,而不仅仅是 “// ......”?