Twitter分享按钮:分享URL的哈希部分?

4
我有一个网站,当用户浏览它时(这是一个Backbone.js应用程序,我正在使用pushState),它会动态更新URL哈希值。
我希望用户能够在推特上分享完整的URL,包括哈希值。
我正在使用Twitter共享按钮,但似乎只共享基本的URL路径,而不是哈希值,这非常重要:
<a href="https://twitter.com/share" class="twitter-share-button">Tweet</a>

有什么想法可以让用户分享这个哈希值吗?
谢谢你的帮助。

2
您正在使用pushState,因此除非用户使用旧浏览器,否则不应该出现哈希。 - ThiefMaster
1
当然可以,但我需要支持使用旧浏览器的用户... - Richard
我认为这可能是最好的答案:https://dev59.com/8GDVa4cB1Zd3GeqPbj8d 我希望Twitter默认情况下添加包含此选项。 - Richard
2个回答

13

关键是使用其HTML编码字符%23替换井号。


6
对于 JS,使用encodeURIComponent(window.location.href)。文档。 - Kevin Jurkowski

0

那个按钮是否使用了referer? 如果是,你就没戏了 - hash 从未发送到服务器

但是,当使用pushState时,除非用户的浏览器太旧,否则不需要hash - 但对于所有使用最新浏览器的用户,它应该可以正常工作,因为referer将是当前在地址栏中使用的任何内容。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接