如何为该数组使用默认值?直到第一个循环才显示结果
How can I use a default value for this array? The result is not displayed until the first loop
我有这个代码:
<span id="changeText"></span>
<script type="text/javascript">
var text = ["cool", "awesome", "outstanding"];
var counter = 0;
var elem = document.getElementById("changeText");
var refreshIntervalI = setInterval(change, 2000);
function change()
{
elem.innerHTML = text[counter];
counter++;
if (counter >= text.length) { clearInterval(refreshIntervalI); }
}
</script>
输出在 2000 毫秒后正确显示每个单词,但也需要 2 秒才能显示第一个单词。如何设置一个默认值,该值将一直显示到循环开始?
提前致谢:)
为什么不就这样
var text = ["cool", "awesome", "outstanding"];
var counter = 1;
var elem = document.getElementById("changeText");
elem.innerHTML = text[0];
var refreshIntervalI = setInterval(change, 2000);
function change()
{
elem.innerHTML = text[counter];
counter++;
if (counter >= text.length) { clearInterval(refreshIntervalI); }
}
加载时将数组的第一个值设置为 innerHTML
,并让计数器从 1
开始,它应该会按预期工作。
第一次尝试调用没有setInterval()的函数:
function change() {
...
}
change();
我有这个代码:
<span id="changeText"></span>
<script type="text/javascript">
var text = ["cool", "awesome", "outstanding"];
var counter = 0;
var elem = document.getElementById("changeText");
var refreshIntervalI = setInterval(change, 2000);
function change()
{
elem.innerHTML = text[counter];
counter++;
if (counter >= text.length) { clearInterval(refreshIntervalI); }
}
</script>
输出在 2000 毫秒后正确显示每个单词,但也需要 2 秒才能显示第一个单词。如何设置一个默认值,该值将一直显示到循环开始?
提前致谢:)
为什么不就这样
var text = ["cool", "awesome", "outstanding"];
var counter = 1;
var elem = document.getElementById("changeText");
elem.innerHTML = text[0];
var refreshIntervalI = setInterval(change, 2000);
function change()
{
elem.innerHTML = text[counter];
counter++;
if (counter >= text.length) { clearInterval(refreshIntervalI); }
}
加载时将数组的第一个值设置为 innerHTML
,并让计数器从 1
开始,它应该会按预期工作。
第一次尝试调用没有setInterval()的函数:
function change() {
...
}
change();