gpt4 book ai didi

javascript - 如何启动和停止这个文本更改器?

转载 作者:行者123 更新时间:2023-12-03 02:44:39 25 4
gpt4 key购买 nike

我正在寻找一种解决方案来停止此文本转换器、重新启动重置。它的一部分可以工作,但是使用 startreset 我仍然遇到问题。整个内容都用于字幕。也许有更好的解决方案。有人能帮我吗?非常感谢。

var texter = new Array
texter[0]='good day';
texter[1]='How can I be stopped and started ?';
texter[2]='';
texter[3]='everything should start again from the beginning with the reset button.';
texter[4]='that would be great !!!';
texter[5]='Many thanks for the help';
texter[6]='';
texter[7]='Ciao';
var i=0;

function changer(){
document.getElementById('transbox').innerHTML=texter[i];
i++;
if (i>7) i=0;
window.setTimeout("changer()", 2500);
}

var info = document.getElementById("transbox");
info.style.display = "none";

// Infobox display
function buttonShow() {
info.style.display = "";
}
// Infobox hidden
function buttonHide() {
info.style.display = "none";
}
function buttonStop() {
changer = stop;
}
function buttonSrart() {
window.setInterval ( "changer()", 2500 );
}
function buttonClear() {
changer(i=0);
}
#transbox {
font-family:Arial,sans-serif;
color:black;
text-align:center;
margin-top:80px;
}
<button type="button" onclick="buttonShow()">CC Open</button>
<button type="button" onclick="buttonHide()">CC Close</button>
<button type="button" onclick="buttonStop()">CC Stop</button>
<button type="button" onclick="buttonPlay()">CC Play</button>
<button type="button" onclick="buttonReset()">CC Reset</button>

<body onLoad="changer()" id="text">

<div id="transbox"></div>

<p id="Text1"></p>
<p id="Text2"></p>

最佳答案

这非常简单

  • 存储计时器的 ID 以便停止它
  • 将索引 i 设置回 0 以进行重置。
  • 恢复计时器,无需重置 i 来恢复。
  • 额外提示:不要使用字符串求值(“changer()”)来传递对函数的引用。

var texter = new Array
texter[0]='good day';
texter[1]='How can I be stopped and started ?';
texter[2]='';
texter[3]='everything should start again from the beginning with the reset button.';
texter[4]='that would be great !!!';
texter[5]='Many thanks for the help';
texter[6]='';
texter[7]='Ciao';
var i=0;
var timerId;

function changer(){
document.getElementById('transbox').innerHTML=texter[i];
i++;
if(i==texter.length-1) i = 0;
}

var info = document.getElementById("transbox");
info.style.display = "none";

// Infobox display
function buttonShow() {
info.style.display = "";
}
// Infobox hidden
function buttonHide() {
info.style.display = "none";
}
function buttonStop() {
clearInterval(timerId);
}
function buttonPlay() {
timerId = window.setInterval ( changer, 2500 );
}
function buttonReset() {
i = 0;
changer();
clearInterval(timerId);
}
#transbox {
font-family:Arial,sans-serif;
color:black;
text-align:center;
margin-top:80px;
}
<button type="button" onclick="buttonShow()">CC Open</button>
<button type="button" onclick="buttonHide()">CC Close</button>
<button type="button" onclick="buttonStop()">CC Stop</button>
<button type="button" onclick="buttonPlay()">CC Play</button>
<button type="button" onclick="buttonReset()">CC Reset</button>

<body onLoad="changer()" id="text">

<div id="transbox"></div>

<p id="Text1"></p>
<p id="Text2"></p>

关于javascript - 如何启动和停止这个文本更改器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48150503/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com