javascript - 添加过渡效果
问题描述
我想为我的滑块添加翻译效果,但我不知道如何添加翻译效果。请告诉我该怎么做
我想当我点击右键时从左到右显示新幻灯片,所以当我点击左键时从右到左显示新幻灯片!
如果可能的话,请帮助纠正我的代码,谢谢!
var slideIndex = 1;
showSlides(slideIndex);
function plusSlides(n) {
showSlides(slideIndex += n);
}
function showSlides(n) {
var i;
var slides = document.getElementsByClassName("mySlides");
if (n > slides.length) {
slideIndex = 1
}
if (n < 1) {
slideIndex = slides.length
}
for (i = 0; i < slides.length; i++) {
slides[i].style.display = "none";
}
slides[slideIndex - 1].style.display = "block";
}
* {
box-sizing: border-box
}
.slideshow-container {
max-width: 100%;
height: 470px;
position: relative;
margin: auto;
background: #fff;
padding: 5px 10px 0px 0px;
}
.mySlides {
display: none;
text-align: center;
}
.prev,
.next {
cursor: pointer;
position: absolute;
top: 50% width: auto;
color: #14b8c2;
font-size: 18px;
}
.next {
right: 0;
border-radius: 0 3px 3px 0;
}
.prev {
left: 0;
border-radius: 3px 0 0 3px;
}
.prev:hover,
.next:hover {}
<div class="slideshow-container">
<div class="mySlides">
html element1
</div>
<div class="mySlides">
html element2
</div>
<button class="prev" onclick="plusSlides(-1)">left</button>
<button class="next" onclick="plusSlides(1)">right</button>
</div>
解决方案
您需要更改您的 JS 代码以了解何时单击左侧按钮或右侧按钮,然后为您添加如下动画:
.next{
position: absolute;
left: 0;
width: 200px;
height: 200px;
animation: slidel 3s forwards;
}
@keyframes slidel {
100% { left: 100%;}
}
这将从左到右滑动一个带有 .next 类的 div。现在您需要做的就是在从右到左的动画中添加另一个动画,并在单击相应按钮时添加它
推荐阅读
- java - 用于在数据库表中搜索子字符串的 MySQL 类似查询
- sql - Oracle 中的多个内联函数
- android - 如何在首先在 Linux 上制作并导入 Windows 的项目上修复“无法进行 Kotlin 项目配置”
- asp.net-mvc - 如何解决不支持的关键字:“数据源”
- html - role=dialog 和 role=alertdialog 有什么区别?
- sublimetext3 - 崇高文本中的搜索栏文本类条目
- excel - 指定当前工作簿的路径和地址有什么好处吗
- java - 当我添加 @Autowired WebService 字段时,配置类不运行
- r - R中的循环矩阵乘法
- c++ - 为什么我的二维表显示不正确?