我正在使用一个按钮,可以让访问者在推特上发布博客文章。我正在使用以下代码:
<li class="ft-stwitter">
<a rel="nofollow" target="_blank" href="https://twitter.com/intent/tweet?url=http://www.mywebebsite.com/the-url/&text=Blog Title" onclick="javascript:window.open(this.href,
'', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=600,width=600');return false;">
<i class="icon-twitter"></i> Share on Twitter
</a>
</li>
它工作正常。在同一页面上,我也有官方的Twitter关注按钮。代码如下:
<a href="https://twitter.com/cracked" class="twitter-follow-button" data-show-count="false" data-show-screen-name='false' data-lang="en">Follow @Storypicker</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>
现在,当我单击"在Twitter上分享"链接时,会打开两个弹出窗口。我该如何解决它?我做错了什么?请指导我。:(
这是问题小提琴:http://jsfiddle.net/zk79C/2/
更新:
该问题是一个错误,但已标记为已修复。 https://dev.twitter.com/issues/191
好的,我自己解决了。这是解决方案:
<li class="ft-stwitter">
<a rel="nofollow" target="_blank" href="https://twitter.com/intent/tweet?url=http://www.mywebebsite.com/the-url/&text=Blog Title">
<i class="icon-twitter"></i> Share on Twitter
</a>
</li>
不需要点击。
在 href 中,替换
https://twitter.com/intent/tweet?
由
https://twitter.com/share?
这为我解决了这个问题。似乎第一个 url 正在调用打开第二个弹出窗口的脚本。但是,奇怪的是,这只发生在Firefox(当前v51.0.1)中。
源
您的链接会打开一个新窗口,然后javascript也会打开。
显示浏览器中显示的 HTML,而不是服务器代码