我有问题,我正在尝试建立一个网站(我的JS技能还不够好),我有一个onclick函数,它将使JS在div(“ gallerym”)中显示图像。
我已经尝试了好几天,以开发新的oncklick函数up() 基本上是一个向上箭头,并使用IF语句应该可以识别“ gallerym”内部的图像,并显示“ gallerym”内部的其他图像。
我最好的办法是创建另一个“画廊”并显示两个图像的代码。
请帮助我找到正确的代码。
非常感谢!
function up() {
var gallerym = document.getElementById('gallerym');
var myImage = gallerym.querySelector('img');
var imageArray = ['../images/gallery/10cmto100cmm600x600.jpg',
'../images/gallery/10cmto100cmt600x600.jpg',
'../ images / gallery / 1mto10mm600x600.jpg','.. / images / gallery / 1mto10mm600x600.jpg'] var currentIndex = imageArray.findIndex(myImage.src) //将src更改为下一张图片,但首先检查src是否为 最后一项,因此您改为关注第一项 var lastItem = imageArray [imageArray.length-1] myImage.src = imageArray [currentIndex] == lastItem吗? imageArray [0]: imageArray [currentIndex + 1] //不再需要if语句 }
答案 0 :(得分:0)
function up() {
var gallerym = document.getElementById('gallerym');
var myImage = gallerym.querySelector('img');
var imageArray = ['image1.jpg', 'image2.jpg', 'image3.jpg',
'image4.jpg']
var currentIndex = imageArray.findIndex(myImage.src)
// Change the src to the next image, but first checking if the src is the last item, so you resest to first item instead
var lastItem = imageArray[imageArray.length - 1]
myImage.src = imageArray[currentIndex] == lastItem ? imageArray[0] : imageArray[currentIndex + 1]
// No need for the if statement again
}
答案 1 :(得分:0)
为什么不将最后一个if / else加到第一个if / else上,而只做一个else if语句。
var gallerym = document.getElementById('gallerym');
var myImage = gallerym.querySelector('img');
if (myImage.src == 'image1.jpg') {
myImage.src = 'image2.jpg'
}else if (myImage.src == 'image3.jpg') {
myImage.src = 'image4.jpg'
} else if (myImage.src == 'image3.jpg') {
myImage.src = 'image3.jpg'
}
else {
myImage.src = 'image1.jpg'
}
或Switch语句
switch(myImage.src) {
case 'image1.jpg':
myImage.src = 'image2.jpg'
break;
case 'image3.jpg':
myImage.src = 'image4.jpg'
break;
default:
// code block
}
答案 2 :(得分:0)
非常感谢您尝试提供帮助!我能够弄清楚:
这就是我所做的:像护身符一样
function up () {
if
(document.getElementById("gallerymain")
.getAttribute('src')
== "../images/gallery/image1.jpg")
{
document.getElementById("gallerymain").src =
"../images/gallery/image2.jpg"
}
else if
(document.getElementById("gallerymain")
.getAttribute('src')
== "../images/gallery/image3.jpg")
{
document.getElementById("gallerymain").src =
"../images/gallery/image4.jpg"
}
}