无法分享包含引用和推文的推文作者(FCC随机报价机)Javascript / JQuery

时间:2016-02-27 10:06:05

标签: javascript jquery json twitter

我的JSON工作正常。我每次点击我的" Gimme A'我都能修改引用文本和引用作者。报价"按钮。但是,每次尝试使用引用文本和作者发布推文时,我都会遇到问题。每当我点击推特符号时,页面就会刷新。

我一直试图通过这样做将引用内容和作者添加到推文中:

var twitterIntent = 'https://twitter.com/intent/tweet?text=' + quoteText + 'Author' + quoteAuthor + ' @myleschuahiock';

随后告诉JQuery每当我点击" Gimme A'报价"按钮:

$('.quote-button').click(function(){
    getQuote();
    colorRandomizer();
    $('.twitter-share').attr("href", twitterIntent);
});

我的代码位于: http://codepen.io/myleschuahiock/pen/WrVgzB 请看看!

有人可以告诉我我做错了什么吗? 谢谢,非常感谢!

这个项目是我提交给Free Code Camp的。

1 个答案:

答案 0 :(得分:2)

您正在twitterIntent函数中定义getQuote(),但之后尝试在该函数之外使用它。如果您检查控制台是否有错误,则会在您单击按钮后显示twitterIntent未定义。相反,您只需更改href功能内.twitter-share链接的getQuote()属性即可。

只需在您要更改$('.twitter-share').attr('href','https://twitter.com/intent/tweet?text='+quoteText+' Author: '+quoteAuthor+' @myleschuahiock');.quote-content区域内容的行.quote-author中添加,如下例所示。

json.forEach(function(val) {
    quoteText = val.quote;
    quoteAuthor = val.author;
    $('.quote-content').html(quoteText);
    $('.quote-author').html(quoteAuthor);
    $('.twitter-share').attr('href','https://twitter.com/intent/tweet?text='+quoteText+' Author: '+quoteAuthor+' @myleschuahiock');
  });

然后,您只需从$('.twitter-share').attr("href", twitterIntent);移除$('.quote-button').click(),即可全部设置。