我做了一个报价生成器,它是随着时间改变的,但我想能够改变它与一个按钮点击以及,所以我添加了一个函数,但当我点击它(在代码上),它说未定义。。。
我是编程新手,所以我可能会犯一个愚蠢的错误:)
var text = ["Welcome", "Hi", "Sup dude", "Hola"];
var counter = 0;
var elem = document.getElementById("changeText");
var inst = setInterval(change, 2000);
function change() {
elem.innerHTML = text[counter];
counter++;
if (counter >= text.length) {
counter = 0;
}
}
function newQuote(){
var randomNumber = Math.floor(Math.random() * (text.lenght));
document.getElementById('changeText').innerHTML = text[randomNumber];
}
<div id="changeText"></div>
<button onclick="newQuote()">new quote</button>
我需要在点击后重置更改时间,例如,让我们假设报价每20秒更改一次
改变了20,19,18,17点击为新的一个,现在计时器应该是20再次不应该走像17,16,15…。 应该是20,19,18。
我也不知道怎么做。。。 如果你们能帮忙就太好了。
看起来text.lenght
中有一个错误(应该是长度)。 编辑:函数newQuote()中的第一行
单击按钮会导致undefinede
,原因是输入错误。 您编写了length
而不是length
。