1

这是我的Addthis代码:

 <script type="text/javascript" src="addthis_widget.js"></script>
 <script type="text/javascript">
      var addthis_config = {
           services_expanded: 'facebook, twitter'
 }
 </script>

 <a addthis:services_compact="facebook,twitter" addthis:services_expanded="facebook,twitter" addthis:url="#" class="addthis_button" href="#"><img id="btn_share" name="btn_share" style="cursor:pointer;" src="path to image" alt="Share" /></a>

如果我将此Addthis代码放在简单的 HTML 文件中并尝试通过任何服务器运行,例如在我使用 Apache 的情况下。并尝试通过 localhost/myaddthis.html 从浏览器运行,而不是正常工作(显示正确的弹出窗口以共享到 facebook 和 twitter 的特定链接)。

但问题是:当我尝试直接在浏览器中运行简单的 html 文件时,它只显示图像,不显示正确的 addthis 共享弹出窗口。

它只是一个简单的 .HTML 文件(文件内没有服务器端代码),而不是为什么它在没有服务器的情况下无法运行。

我想在没有服务器的情况下使用此代码。我该怎么做?

4

3 回答 3

3

您可能通过将它们作为本地文件打开而不是从 Web 服务器加载它们来查看您的页面。因此,浏览器中页面的 URL 不是以 http:// 开头,而是以 C:\ 或 file:// 开头

这是通过 http:// - http://i.imgur.com/IDGUD.png查看时 AddThis 按钮的外观

这是使用 file:// 查看的相同文件 - http://i.imgur.com/gpCco.png

我们目前在我们的代码中使用无协议 URL - 以 // 而不是 http:// 或 https:// 开头的 URL - 以确保我们的 SSL 实现无需额外工作即可交叉兼容。但是,如果您使用 file:// 协议加载测试页面,它会导致 CSS 和其他 JavaScript 文件无法加载,因为它会在您的本地计算机上而不是我们的 Web 服务器上查找它们。

我已经向我们的开发人员提交了一张票,为使用他们的文件系统而不是 Web 服务器预览页面的人们修复此问题,但在他们能够实现之前,您应该了解如果使用该文件,按钮将不会显示: // 协议或使用网络服务器来测试您的网站在浏览器中的显示方式。

于 2012-10-02T14:34:13.377 回答
1

我相信这是正常的,因为 AddThis 是在社交网站上分享东西。如果您不在服务器上,您将无法共享内容,因为它是本地文件。

它可能在 addThis 代码中检查服务器。如果它不是服务器,则不必共享。

如果你问我,这是常识,但我可能是错的。

于 2012-10-01T17:34:40.447 回答
1

Addthis 将检查当前 url -http://localhost/etc.是一个有效的位置,但file://path/to/yourfile.html不是。

于 2012-10-01T18:10:32.743 回答