3-15 效果出不来~
//封装一个代替getElementById()的方法
function byId(id){
return typeof(id)==="string"?document.getElementById(id):id;
}
var index = 0,
timer = null,
pics = byId("banner").getElementsByTagName("div"),
len = pics.length;
console.log(len);
function slideImg(){
var main=byId("main");
//滑过清除定时器,离开继续
main.onmouseover = function(){
//滑过清除定时器
}
main.onmouseout = function(){
timer = setInterval(function(){
index++;
if(index >= len){
index = 0;
}
//切换图片
changeImg();
},3000)
}
//自动在main上触发鼠标离开后的事件
main.onmouseout();
}
//定义切换图片的元素
function changeImg(){
//遍历banner下所有的div,将其影藏
for(var i=0;i<len;i++){
pics[i].style.display="none";
}
pics[index].style.display = 'block';
}
slideImg();
console 里有这个错误
正在回答
经测试在html代码中用的是class
而在js脚本中用的是id获取
这种情况下是获取不到的哦,可以把html中的属性修改成id。自己修改测试下,祝学习愉快~~
<html>
<head>
<meta charset="UTF-8">
<title>图片轮播</title>
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<div class="main">
<!--图片轮播-->
<div class="banner" id="banner">
<a href="">
<div class="banner-slide slide1 solide-active" ></div>
</a>
<a href="">
<div class="banner-slide slide2"></div>
</a>
<a href="">
<div class="banner-slide slide3"></div>
</a>
</div>
<!--上一张,下一张按钮-->
<a href="javascript:void(0)" class="button prev"></a>
<a href="javascript:void(0)" class="button next"></a>
<!--圆点导航-->
<div class="dots">
<span class="active"></span>
<span></span>
<span></span>
</div>
</div>
<script src="JS/script.js"></script>
</body>
</html>
*{
margin: 0;
padding: 0;
}
ul{
list-style-type: none;
}
body{
font-family: "微软雅黑";
color: #14191e;
}
.main{
width: 1200px;
height: 460px;
margin: 30px auto;
overflow: hidden;
position: relative;
}
.banner{
width: 1200px;
height: 460px;
overflow: hidden;
position: relative;
}
.banner-slide{
width: 1200px;
height: 460px;
position: absolute;
display: none;
background-repeat: no-repeat;
}
.solide-active{
display: block;
}
.slide1{
background-image:url(../images/bg1.jpg)
}
.slide2{
background-image:url(../images/bg2.jpg)
}
.slide3{
background-image:url(../images/bg3.jpg)
}
.button{
position: absolute;
width: 40px;
height: 80px;
left: 244px;
top:50%;
margin-top:-40px;
background:url(../images/arrow.png) no-repeat;
background-position: center center;
}
.button:hover{
background-color: #333;
opacity: 0.8;
filter:alpha(opacity=80);
}
.prev{
transform: rotate(180deg)
}
.next{
left: auto;
right:0;
}
.dots{
position: absolute;
right: 20px;
bottom: 24px;
text-align:right;
}
.dots span{
display: inline-block;
width: 12px;
height: 12px;
line-height: 12px;
border-radius: 50%;
background:rgba(7, 17 , 27, 0.4);
box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.8) inset;
margin-left: 8px;
cursor: pointer;
}
.dots span.active{
box-shadow: 0 0 0 2px rgba(7, 17 , 27, 0.4) inset;
background: white;
}
- 参与学习 547 人
- 提交作业 206 份
- 解答问题 640 个
JavaScript作为前端学习中的一个重要组成部分,本课程将带领你从最基础的语法开始,学习js的流程控制语句、函数、内置对象、DOM基础、DOM事件、BOM基础以及经典的js案例--轮播图。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星