我正在创建一个应用程序,只需单击一个按钮即可随机生成报价。我希望用户能够在Twitter或Facebook上分享这个引用,但这就是问题出现的地方。
HTML:
<div class="row">
<div id="quoteBox" class="col-xs-6 col-xs-offset-3">
<p><span id="famousQuote">"Nothing in life is to be feared; it is only to be understood. Now is the time to understand more so that we may fear less."</span></p>
<i id="fbicon" class="fa fa-facebook-official fa-3x" aria-hidden="true" style="color:white"></i>
<i id="twitterShare" class="fa fa-twitter fa-3x" aria-hidden="true" style="color:white"></i>
</div>
<div class="row">
<div class="col-xs-4 col-xs-offset-4">
<button id="generateQuote" type="button" class="btn btn-primary btn-block">Change Quote</button>
</div>
</div>
</div>
JAVASCRIPT:
document.getElementById("twitterShare").addEventListener("click", function(){
var url ="https://twitter.com/intent.tweet";
var text = document.getElementById("famousQuote").value;
window.open(url+"?text="+text);
})
然而,当我点击推特图标时,链接会显示&#34;抱歉,该页面不存在!&#34;
显然,我在这里遇到的错误之一是URL,或者也许是我编写它的方式。
非常感谢您的帮助。
答案 0 :(得分:0)
您需要对网址参数进行编码,并使用其他网址:
document.getElementById("twitterShare").addEventListener("click", function(){
var url ="https://twitter.com/share?url=" + encodeURIComponent(document.location);
var text = encodeURIComponent(document.getElementById("famousQuote").innerText);
window.open(url + "&text=" + text);
})