Javascript 为什么不是';我的图像库不工作吗?
我对javascript非常熟悉,我(几乎)制作了一个图像库。它包括两个按钮(图片不是所有HTML按钮)。无论如何,选择下一张图片的按钮工作正常,但是,应该返回到上一张图片的按钮工作正常,但是一旦你通过第一张图片,它就会跳转为白色(你知道当它只是白色,中间有一个小图片符号时)。我不知道为什么 Javascript:Javascript 为什么不是';我的图像库不工作吗?,javascript,jquery,html,image,gallery,Javascript,Jquery,Html,Image,Gallery,我对javascript非常熟悉,我(几乎)制作了一个图像库。它包括两个按钮(图片不是所有HTML按钮)。无论如何,选择下一张图片的按钮工作正常,但是,应该返回到上一张图片的按钮工作正常,但是一旦你通过第一张图片,它就会跳转为白色(你知道当它只是白色,中间有一个小图片符号时)。我不知道为什么 Javascript: <script> var myImage= new Array(); myImage[0]="pics/IMG1.jpg";
<script>
var myImage= new Array();
myImage[0]="pics/IMG1.jpg";
myImage[1]="pics/IMG2.jpg";
myImage[2]="pics/IMG3.jpg";
myImage[3]="pics/IMG4.jpg";
var ImageCnt = 0;
function next(){
ImageCnt++;
if(ImageCnt == 4) {
ImageCnt = 0;
}
document.getElementById("img1").src = myImage[ImageCnt];
}
function previous () {
ImageCnt--;
if(ImageCnt == 0) {
ImageCnt = 4;
}
document.getElementById("img1").src = myImage[ImageCnt];
}
</script>
var myImage=新数组();
myImage[0]=“pics/IMG1.jpg”;
myImage[1]=“pics/IMG2.jpg”;
myImage[2]=“pics/IMG3.jpg”;
myImage[3]=“pics/IMG4.jpg”;
var-ImageCnt=0;
函数next(){
ImageCnt++;
如果(ImageCnt==4){
ImageCnt=0;
}
document.getElementById(“img1”).src=myImage[ImageCnt];
}
函数前(){
图像处理;
如果(ImageCnt==0){
ImageCnt=4;
}
document.getElementById(“img1”).src=myImage[ImageCnt];
}
HTML(仅img部分):
提前感谢!:) 您的下一个/上一个逻辑有缺陷:
if(ImageCnt == 0) {
ImageCnt = 4;
}
您只定义了myImage 0->3,因此当您将ImageCnt重置为4时,您正在查找一个不存在的图像。此外,您还硬编码了图像数组的预期长度,这意味着如果以后添加更多图像,则必须修改这两个函数以接受新的长度
试一试
上一页:
这使得检查是动态的,除了用更多/更少的图像更新myImage阵列之外,您无需执行任何操作。您的下一个/上一个逻辑有缺陷:
if(ImageCnt == 0) {
ImageCnt = 4;
}
您只定义了myImage 0->3,因此当您将ImageCnt重置为4时,您正在查找一个不存在的图像。此外,您还硬编码了图像数组的预期长度,这意味着如果以后添加更多图像,则必须修改这两个函数以接受新的长度
试一试
上一页:
这使得检查是动态的,除了用更多/更少的图像更新myImage数组外,您无需执行任何操作。对于以前的代码,请尝试按如下方式减小值:
if(ImageCnt == -1) {
ImageCnt = 3;
}
问题是,数组只指向3(0-3而不是1-4),因此它将指向不存在的图像。对于以前的代码,请尝试按如下方式减小值:
if(ImageCnt == -1) {
ImageCnt = 3;
}
问题是数组只指向3(0-3,而不是1-4),因此它将指向不存在的映像。函数前一个(){
图像处理
只需将ImageCnt=4更改为3
此外,如果您处于索引0,则必须显示图像0
因此,您希望在imagecnt==-1上显示第四个图像(索引=3)函数previous(){
图像处理
只需将ImageCnt=4更改为3
此外,如果您处于索引0,则必须显示图像0
因此,您希望在imagecnt==-1上显示第四个图像(索引=3)在以前的方法中,您有一个错误。应该是这样的:
if(ImageCnt == -1) {
ImageCnt = 3;
}
因为数组中不存在4索引,也不存在0位置
希望有帮助
干杯!在以前的方法中,您有一个错误。应该是这样的:
if(ImageCnt == -1) {
ImageCnt = 3;
}
因为数组中不存在4索引,也不存在0位置
希望有帮助
干杯!谢谢,它似乎在工作,但在使用该功能一段时间后,它仍然返回到白色图片。下面的方法似乎更适合我,即使你的更好。我是js的初学者,所以我想我会选择简单的方法;)但是谢谢你的帮助!我会在流利地说Javascript时尝试:PThanks、 它似乎可以工作,但在使用该函数一段时间后,它仍然返回到白色图片。下面的方法似乎更适合我,即使你的方法更好。我是js的初学者,所以我想我会选择简单的方法;)但是谢谢你的帮助!当我流利地说Javascript时,我会尝试这个方法:PThanks,我喜欢多快我得到了所有这些回复:D干杯!谢谢,我喜欢我这么快得到所有这些回复:D干杯!
if(ImageCnt == -1) {
ImageCnt = 3;
}