Twitter共享按钮不使用自定义URL或文本

时间:2014-09-27 19:43:00

标签: ruby-on-rails twitter

我有一个像这样的链接

= link_to "https://twitter.com/share", class: "twitter-share-button", data: { url: "https://google.com", text: hack.body, via: "GhettoLifeHack_", hashtags: "ghettolifehack" } do
  = image_tag "Tweet", alt: "Social Twitter tweet button"

并且无论我更改data-url值多少,pre-tweet确认页面总是使用引用页面的url预填充tweet表单字段,而不是我指定的那个。它也忽略了我的自定义数据文本。

为什么会这样?

我也有这个缩小的脚本

<script>!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>

我从这里得到https://about.twitter.com/resources/buttons#tweet 删除该脚本似乎没有任何改变。


编辑:在尝试直接使用:'data-url'属性时,输出html是相同的。

我正在测试硬编码字符串和动态生成的网址。第一个是动态的。

<a class="twitter-share-button" href="https://twitter.com/share" data-via="GhettoLifeHack_" data-url="http://localhost:3000/hacks/1" data-text="asdf comment body" data-hashtags="ghettolifehack">

    <img src="/images/Tweet" alt="Tweet" title=""></img>

</a>

第二个是硬编码字符串

<a class="twitter-share-button" href="https://twitter.com/share" data-via="GhettoLifeHack_" data-url="httpL//google.com" data-text="custom text" data-hashtags="ghettolifehack">

    <img src="/images/Tweet" alt="Tweet" title=""></img>

</a>

我在开发和生产方面进行了测试。两者都具有使用引用网址预先填充推文表单的相同行为,而不是指定的网址和文本。

这适用于Chrome,但不适用于Firefox 32

2 个答案:

答案 0 :(得分:0)

该问题特定于firefox浏览器。我不确定是什么插件或设置导致冲突,但它在chrome中完美地找到,包括弹出窗口。

答案 1 :(得分:0)

您提供的代码非常好,应该按预期工作。

许多网站问题可能是由损坏的Cookie或缓存造成的。尝试清除cookie和缓存。我建议你查看following link以了解为什么它不能在firefox中运行