Javascript 按顺序获取数组中的项,然后重复? 恭维: 函数更改(){ //------标题和图片-----------// 变量things=[“Slide01”、“Slide04”、“Slide05”、“Slide06”]; var字幕=[“非常好”、“很棒”、“酷”、“最好”]; //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^/ var image=document.getElementById('hof'); var thing=things[]; image.src=“link”+thing+“.jpg”;//更改图像 span=document.getElementById(“myspan”); span.innerText=“恭维:”+字幕[];//更改字幕 } setInterval('change()',4000);
因此,我不熟悉javascript,我正在尝试制作带有标题的幻灯片,但我需要数组中的值按顺序显示,如(slide01>slide02>slide03),然后在到达最后一个值时从头开始重复。要回答您实际问到的问题,请使用Javascript 按顺序获取数组中的项,然后重复? 恭维: 函数更改(){ //------标题和图片-----------// 变量things=[“Slide01”、“Slide04”、“Slide05”、“Slide06”]; var字幕=[“非常好”、“很棒”、“酷”、“最好”]; //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^/ var image=document.getElementById('hof'); var thing=things[]; image.src=“link”+thing+“.jpg”;//更改图像 span=document.getElementById(“myspan”); span.innerText=“恭维:”+字幕[];//更改字幕 } setInterval('change()',4000);,javascript,html,Javascript,Html,因此,我不熟悉javascript,我正在尝试制作带有标题的幻灯片,但我需要数组中的值按顺序显示,如(slide01>slide02>slide03),然后在到达最后一个值时从头开始重复。要回答您实际问到的问题,请使用更改外部定义的索引变量。从0开始,并(在渲染幻灯片后)将其递增,在到达things.length时将其环绕。最后一部分有一个技巧: <img src="link" id="hof" </div> <span id="myspan">
更改外部定义的索引变量。从0
开始,并(在渲染幻灯片后)将其递增,在到达things.length时将其环绕。最后一部分有一个技巧:
<img src="link" id="hof" </div>
<span id="myspan">Compliment: </span>
<script type="text/javascript">
function change() {
// ---------- Caption and images !! -----------//
var things = ["Slide01", "Slide04", "Slide05", "Slide06"];
var captions = ["Very nice", "Awesome", "Cool", "Best"];
// ^^^^^^^^^^ Captions and Images !! ^^^^^^^^^^ //
var image = document.getElementById('hof');
var thing = things[];
image.src = "link" + thing + ".jpg"; // change the image
span = document.getElementById("myspan");
span.innerText= "Compliment: " + captions[]; //change caption
}
setInterval('change()', 4000);
</script>
其他说明:
不要使用并行数组,而是使用对象数组
index = (index + 1) % things.length;
然后
在change
之外定义该数组,无需在每次调用change
时重新创建它
不要将字符串传递到setInterval
或setTimeout
;改为传入函数:
var slide = slides[index];
image.src = "link" + slide.name + ".jpg";
span.innerText = "Compliment: " + slide.caption + ".jpg";
考虑将所有代码包装在范围函数中,以便索引
、幻灯片数组和更改
函数不是全局函数:
setInterval(change, 4000);
要回答您实际提出的问题:您需要使用在change
外部定义的index
变量。从0
开始,并(在渲染幻灯片后)将其递增,在到达things.length时将其环绕。最后一部分有一个技巧:
<img src="link" id="hof" </div>
<span id="myspan">Compliment: </span>
<script type="text/javascript">
function change() {
// ---------- Caption and images !! -----------//
var things = ["Slide01", "Slide04", "Slide05", "Slide06"];
var captions = ["Very nice", "Awesome", "Cool", "Best"];
// ^^^^^^^^^^ Captions and Images !! ^^^^^^^^^^ //
var image = document.getElementById('hof');
var thing = things[];
image.src = "link" + thing + ".jpg"; // change the image
span = document.getElementById("myspan");
span.innerText= "Compliment: " + captions[]; //change caption
}
setInterval('change()', 4000);
</script>
其他说明:
不要使用并行数组,而是使用对象数组
index = (index + 1) % things.length;
然后
在change
之外定义该数组,无需在每次调用change
时重新创建它
不要将字符串传递到setInterval
或setTimeout
;改为传入函数:
var slide = slides[index];
image.src = "link" + slide.name + ".jpg";
span.innerText = "Compliment: " + slide.caption + ".jpg";
考虑将所有代码包装在范围函数中,以便索引
、幻灯片数组和更改
函数不是全局函数:
setInterval(change, 4000);
下一个
var计数=0;
变量things=['Slide01'、'Slide04'、'Slide05'、'Slide06'];
变量标题=[“非常好”,“很棒”,“酷”,“最好];
函数imgcarousel()
{
计数++;
var img=document.getElementById(“hof”);
var caption=document.getElementById(“caption”);
如果(计数>=things.length)
{
计数=0;
}
img.src=things[count]+“.png”;
caption.innerHTML=“赞美:”+字幕[计数];
}
下一个
var计数=0;
变量things=['Slide01'、'Slide04'、'Slide05'、'Slide06'];
变量标题=[“非常好”,“很棒”,“酷”,“最好];
函数imgcarousel()
{
计数++;
var img=document.getElementById(“hof”);
var caption=document.getElementById(“caption”);
如果(计数>=things.length)
{
计数=0;
}
img.src=things[count]+“.png”;
caption.innerHTML=“赞美:”+字幕[计数];
}
您可以尝试上述代码。您需要包括一个计数器来捕获按钮点击并在点击时更改图像。您可以尝试上面提到的代码。您需要包括一个计数器来捕获按钮单击并在单击时更改图像。创建索引变量时,“index=(index+1)%slides.length;”这一行在哪里?如何让变量知道在每张幻灯片之后何时递增?@brand-正如我所说,您在change
之外声明变量(并将其设置为0)。关于何时增加它,你认为什么时候才有意义?请记住,数组中的第一个条目位于索引0处……创建索引变量时,“index=(index+1)%slides.length;”这一行在哪里?如何让变量知道在每张幻灯片之后何时递增?@brand-正如我所说,您在change
之外声明变量(并将其设置为0)。关于何时增加它,你认为什么时候才有意义?请记住,数组中的第一个条目位于索引0处。。。