请老师检查代码♥
来源:5-2 自由编程
xcn_aaaa
2022-10-25 19:32:25
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Class 的应用</title>
<link rel="stylesheet" href="./slider.css" />
<style>
.slider {
position: relative;
}
.leftbtn {
position: absolute;
left: 0;
top: 50%;
margin-right: -25px;
width: 50px;
height: 50px;
border-radius: 30px;
color: #000;
background-color: rgba(255, 255, 255, 0.5);
font-size: 40px;
line-height: 50px;
text-align: center;
z-index: 999;
display: none;
}
.rightbtn {
position: absolute;
right: 0;
top: 50%;
margin-top: -25px;
width: 50px;
height: 50px;
border-radius: 30px;
color: #000;
background-color: rgba(255, 255, 255, 0.5);
font-size: 40px;
line-height: 50px;
text-align: center;
z-index: 999;
display: none;
}
</style>
</head>
<body>
<div class="slider-layout">
<div class="slider">
<a href="javascript:;" class="leftbtn" id = "leftbtn"><</a>
<a href="javascript:;" class="rightbtn" id = "rightbtn">></a>
<div class="slider-content">
<div class="slider-item">
<a href="javascript:;"
><img src="./imgs/1.jpg" alt="1" class="slider-img"
/></a>
</div>
<div class="slider-item">
<a href="javascript:;"
><img src="./imgs/2.jpg" alt="1" class="slider-img"
/></a>
</div>
<div class="slider-item">
<a href="javascript:;"
><img src="./imgs/3.jpg" alt="1" class="slider-img"
/></a>
</div>
<div class="slider-item">
<a href="javascript:;"
><img src="./imgs/4.jpg" alt="1" class="slider-img"
/></a>
</div>
</div>
</div>
</div>
<script src="./base.js"></script>
<script>
const leftbtn = document.getElementById('leftbtn');
const rightbtn = document.getElementById('rightbtn');
// console.log(BaseSlider);
// class Slider extends BaseSlider {
// constructor(el, options) {
// super(el, options);
// this._bindEvent();
// }
// _bindEvent() {
// document.addEventListener('keyup', ev => {
// // console.log(ev.keyCode);
// if (ev.keyCode === 37) {
// // ←
// this.prev();
// } else if (ev.keyCode === 39) {
// // →
// this.next();
// }
// });
// }
// }
// new Slider(document.querySelector('.slider'), {
// initialIndex: 1,
// animation: true,
// speed: 1000
// });
class Slider extends BaseSlider {
constructor(el, options) {
super(el, options);
this._bindEvent();
}
_bindEvent() {
leftbtn.addEventListener('click',()=>{
this.prev();
})
rightbtn.addEventListener('click',()=>{
this.next();
})
}
}
const slider = document.querySelector('.slider')
new Slider(slider,{
initialIndex: 1,
animation: true,
speed: 2000
});
slider.onmouseover = ()=>{
rightbtn.style.display = 'block';
leftbtn.style.display = 'block';
}
slider.onmouseout = ()=>{
rightbtn.style.display = 'none';
leftbtn.style.display = 'none';
}
</script>
</body>
</html>1回答
同学你好,效果实现正确,优化参考如下:
1、使用querySelector获取元素

2、相同的代码可以写在一起,添加相同的类名



祝学习愉快~