随机报价机 - 不能发推文引用

时间:2018-04-04 19:53:07

标签: javascript jquery

我必须推文使用API​​随机生成的引用,但我的代码无效。这是我的代码,我添加了评论,试图让它看起来更清晰。我是编码的新手所以它可能有一个可怕的sintax。 我设法通过点击“获取另一个报价”按钮来获取我的报价,但是当我想推文时,单击“推文引用”按钮它不会工作,我得到“未捕获的ReferenceError:数据未定义     at pen.js:10“错误。 我不知道我做错了什么。 (这是FreeCodeCamp的任务)。感谢所有愿意回答的人!

<link href="https://fonts.googleapis.com/css?family=Lato" rel="stylesheet" type="text/css">

<h2 class="title">Random Quote Generator</h2>
<h4 class="subtitle">A project for the FreeCodeCamp challenge</h4>

<div class="container-box">
<div class="container-quote">
<p class="quote" id ="quote"></p>

<div class="container-author" id="author">
  <p></p>
</div> <!--closing div for container author-->

<div class="row">
  <div class="col-md-6">
  <button id="tweetQuote" href="https://twitter.com/intent/tweet?text=data.quoteText">Tweet this quote!</button>
  </div>

  <div class="col-md-6">
  <button id="newQuote">Get another quote</button>
  </div>

</div> <!--row-->


</div> <!--closing div for container quote-->


</div> <!--closing div for container-->

现在是javascript

//setting html elements to variables

var $newQuote = $('#newQuote');
var $quote = $('#quote');
var $tweetQuote = $('#tweetQuote');

//execute function by clicking on button

$newQuote.click(getQuote);
$tweetQuote.click(tweetIt);

var text = data.quoteText;
var author = data.quoteAuthor;

//when getQuote is called call the APIs and get the quote by executing 
getQuoteFromAPI

function getQuote() {
$quote.empty();
getQuoteFromAPI();
};

function getQuoteFromAPI() {

var url='https://api.forismatic.com/api/1.0/? 
method=getQuote&format=jsonp&lang=en&jsonp=?';

//when the APIs are completely called execute the parseQuote function
$.getJSON(url).done(parseQuote);

 //log the datas on the console and transform them into real html elements
function parseQuote (response) {
console.log(response);
document.getElementById('quote').innerHTML = response.quoteText;

document.getElementById('author').innerHTML = response.quoteAuthor;
};
};

function tweetIt() {

var url='https://api.forismatic.com/api/1.0/? 
method=getQuote&format=jsonp&lang=en&jsonp=?';

$('#tweetQuote').attr('href', 'https://twitter.com/intent/tweet?text=' + text + '-' + author);

};

0 个答案:

没有答案