0
我已经编码了一个随机报价生成器,并希望能够分享报价给推特。 http://codepen.io/nachamuami/pen/KrRYpY 通过尝试发送函数来调用整个函数,而不是代码生成的报价。任何指针将不胜感激。鸣叫报价
function getQuote(){
var arrayLength = quoteArray.length; //number of entries in array
var randomValue = Math.floor(Math.random()*arrayLength);
var newQuoteY = quoteArray[randomValue].yiddish;
var newQuoteE = quoteArray[randomValue].translation;
$('#inYiddish').html(newQuoteY);
$('#inEnglish').html(newQuoteE);};
$('#quote-button').click(function(){
getQuote();
});
$('#twitter-button').click(function(){
window.open("https://twitter.com/intent/tweet?text=" + getQuote);
});
});
谢谢,我最终定义了函数外的newQuotes。但现在我遇到了另一个问题,如果我尝试推介第一个占位符报价它出现未定义。 –
@AharonHyman您必须将'newQuoteY'的原始值设置为初始报价,或者您可以获取'$('#inYiddish')。text()'的值。我个人喜欢前者,以避免额外DOM查询的不必要性,以便在大多数情况下获得JavaScript之前由JavaScript设置的东西。 –
@AharonHyman一个更好的方法仍然是在页面加载中运行'getQuote()'一次,每当用户打开页面时,它也会带来不同的报价。 –