我正在制作一个简单的滑块来为我的一个朋友展示艺术品。我真的只熟悉 javascript/jquery,所以我现在不是 100% 习惯使用其他东西。
由于我的朋友没有任何编程知识,我试图让她更新的过程非常简单(即,每当她向文件夹添加新图像时自动创建新图像)。她会将图像上传到一个文件夹,并且必须对它们进行编号(即 1.jpg、2.jpg)。我的 javascript 使用 for 循环遍历数字(每当她添加新图像时,她都必须更新循环)并将它们插入到文件名中。然而,这限制了她只上传一种类型的文件。有没有办法只使用javascript来更改扩展名?
这是我到目前为止所拥有的:
function callImages(){
//create the image div
$('.artslider').append('<div class="image"></div>');
//create the files array
var files = [];
//start the loop, starting position will have to be updated as images are added
for (i=8;i>=0;i--){
//create the img src for a jpg img
var imgJPG = 'arts/'+i+'.jpg';
//find the natural width of the image after it loads to see if it actually exists
var imgWidth = $('imgJPG').load().naturalWidth;
//if the width is undefined, replace the jpg extension with gif
if (imgWidth===undefined){
var imgGIF = imgJPG.replace('jpg', 'gif');
files[i] = '<img src="'+imgGIF+'" class="artsliderimg"/>';
}
//otherwise keep the jpg extension
else {
files[i] = '<img src="'+imgJPG+'" class="artsliderimg"/>';
}
//then add the images to the img div
$('.image').append(files[i]);
}
};
这个 if/else 的问题是它只会创建一个 gif 图像。如果您切换顺序,它只会创建一个jpg图像。
编辑:这是此代码产生的内容:https ://googledrive.com/host/0B1lNgklCWTGwV1N5cWNlNUJqMzg/index.html