【问题标题】:Name Game Social Share名称游戏社交分享
【发布时间】:2015-07-15 18:18:41
【问题描述】:

我正在开发名称游戏类型的名称生成器,您可以在其中输入一些字段并提取相关变量。我有生成器工作并且共享链接工作,但是我不能让它们填充最终的 'sillyname' 变量。 AKA 当您单击共享时,它有一条通用消息,但我试图让它动态地将名称输入到推文或 Facebook 共享文本中。

对此的任何帮助都会很棒。

这里是您深入挖掘的链接。 http://codepen.io/drewlandon/pen/VLvpjq

我在 twitter/facebook 分享功能中有这个:

    var twitterWindow = window.open('https://twitter.com/intent/tweet?url=http://sweetleafmarijuana.com/&text=My Sweet and Fierce Name... &via=TheSweetestLeaf &hashtags=SweetFierceName', 'twitter-popup', 'height=350,width=600'); if(twitterWindow.focus) { twitterWindow.focus(); }
return false; } var facebookShare = document.querySelector('[data-js="facebook-share"]');

但是我发现了这一点,并且觉得它需要是这样的:

    function twitterShare(){
    var shareText='My funny pseudonym is '+accents_to_regulars(outputName)+', according to @...'

所以我想我需要这样的东西(但从那里遇到了麻烦)

    var twitterMessage = "My #SWEETFIERCENAME is " + hungryName + ", according to @thesweetestleaf's #SweetFierceName Name Generator";
    var facebookMessage = "My name is " + hungryName + "";

【问题讨论】:

标签: javascript facebook twitter share generator


【解决方案1】:

您需要对 URL 的文本进行转义。

在这里工作:http://codepen.io/anon/pen/Kpdvqa

twitterShare.onclick = function(e) {
    e.preventDefault();
    var twitterWindow = window.open('https://twitter.com/intent/tweet?url=http://sweetleafmarijuana.com/&text='+encodeURIComponent(getSillyName())+'&via=TheSweetestLeaf &hashtags=SweetFierceName', 'twitter-popup', 'height=350,width=600');
    if(twitterWindow.focus) { twitterWindow.focus(); }
        return false;
}

# 字符在 URL 中具有特殊含义。

至于 Facebook 消息,无法再预先填写: http://www.quora.com/With-Facebooks-share-link-is-there-a-way-to-prefill-the-text-to-be-posted

您必须仔细查看 FB Feed Dialog 以查看其他选项,例如可能更新 caption 属性。

【讨论】:

  • 效果很好!谢谢!我还需要对结果进行样式化。当我将任何
    放在变量返回字段中时,推文会将它们拉出并实际上将它们拼写为“
    ”。有没有办法我可以用一个跨度或几个类来设置结果的样式,并且它不会被 twitter 分享拉出来?
  • 在接收端处理时,转义字符应该未转义到达。由推特来处理 - 你确定可以这样做吗?我认为这是不允许的。
  • 仅供参考:我想我在这里找到了一个类似的帖子,可能对您也有帮助:stackoverflow.com/questions/9127808/…
猜你喜欢
相关资源
最近更新 更多
热门标签