1 回答

TA貢獻1865條經驗 獲得超7個贊
我想我設法得到了你想要的東西。你差不多在那里,你只需要讓它更簡單一點。
我沒有改變他們的類名,而是從Javascript改變了他們的動畫風格。如果您出于其他原因需要更改他們的類名,您也可以這樣做。
這里有一個片段。請注意,滑塊尺寸、邊距等可能看起來有所不同,因為此視口具有另一種大小。
var slideIndex = 1;
showDivs(slideIndex);
function showDivs(n) {
var i;
var x = document.getElementsByClassName("mySlides");
slideIndex += n;
if (slideIndex > x.length) {
slideIndex = 1;
}
if (slideIndex < 1) {
slideIndex = x.length;
}
if (n == 1){
x[slideIndex-1].style.animationName = "MoveLeft";
}else if (n == -1){
x[slideIndex-1].style.animationName = "MoveRight";
}
for (i = 0; i < x.length; i++) {
x[i].style.display = "none";
}
x[slideIndex-1].style.display = "block";
}
.mySlides {position: absolute;animation: MoveLeft 1s;animation-fill-mode: forwards; }
.classname { animation-name: MoveRight;position: absolute;-animation-fill-mode: forwards;}
@keyframes MoveLeft {
0% {position: absolute; margin-top: 50px; margin-left: 62.5%; width: 150px; height: 200px;}
100% {position: absolute; margin-left: 40%; width: 300px; height: 400px;}
to {position: absolute; margin-left: 40%; width: 20%; height: auto;}
}
@keyframes MoveRight {
0% {position: absolute; margin-top: 50px; margin-left: 25%; width: 150px; height: 200px;}
100% {position: absolute; margin-left: 40%; width: 300px; height: 400px;}
to {position: absolute; margin-left: 40%; width: 20%; height: auto;}
}
<div style="position: absolute; margin-top: 5%; margin-left: 5%; width: 90%; height: 300px;">
<div style="position: relative; width: 100%; height: 100%;">
<div style="position: absolute; margin-top: 50px; margin-left: 25%; width: 20%; height: auto;"><img id="BackaImage" onclick=" showDivs(-1);" src="https://dummyimage.com/150x200/FF0000/FF0000"></div>
<img class="mySlides" id="unique" src="https://dummyimage.com/300x400/000/fff">
<img class="mySlides" id="unique" src="https://dummyimage.com/300x400/ff00ff/2d3bfc">
<img class="mySlides" id="unique" src="https://dummyimage.com/300x400/FF0000/FF00">
<div style="position: absolute; margin-top: 50px; margin-left: 62.5%; width: 20%; height: auto;"><img onclick="showDivs(+1);" src="https://dummyimage.com/150x200/FF0000/FF0000"></div>
</div>
</div>
添加回答
舉報