幻灯片
1. 图片的结构
1.1 图片的元素显示
页面上显示图片元素
1 2 3 4
| <img src="img/1.jpg"/> <img src="img/2.jpg"/> <img src="img/3.jpg"/> <img src="img/4.jpg"/>
|
1.2 图片的样式结构
第一行 是大的图片
第二行 是四张小的图片
定义一个 class 控制图片的样式
1 2 3 4 5
| <img src="img/1.jpg" class="big"/> <img src="img/1.jpg" class="small"/> <img src="img/2.jpg" class="small"/> <img src="img/3.jpg" class="small"/> <img src="img/4.jpg" class="small"/>
|
控制图片的基本结构和样式
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| <style> .big{ width: 615px; height: 300px; } .small{ width: 150px; margin-top: 5px; } </style>
<img src="img/1.jpg" class="big"/><br/> <img src="img/1.jpg" class="small"/> <img src="img/2.jpg" class="small"/> <img src="img/3.jpg" class="small"/> <img src="img/4.jpg" class="small"/>
|
2. 图片的切换
2.1 图片的自动切换
图片每隔 1s 自动切换一次
JS 中设置一个定时器
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| <style> .big{ width: 615px; height: 300px; } .small{ width: 150px; margin-top: 5px; } </style>
<script type="text/javascript"> var i = 1; setInterval(function(){ if(i>4){ i = 1; } document.getElementById("big").src ="img/"+(i++)+".jpg"; },1000); </script>
<img src="img/1.jpg" id="big" class="big"/><br/> <img src="img/1.jpg" class="small"/> <img src="img/2.jpg" class="small"/> <img src="img/3.jpg" class="small"/> <img src="img/4.jpg" class="small"/>
|
2.2 显示下面选定的图片
当鼠标滑过下面的图片时,上面的大图停止切换。
显示当前正在停留的这张图片
2.2.1 显示滑过的图片
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| <style> .big{ width: 615px; height: 300px; } .small{ width: 150px; margin-top: 5px; } </style>
<script type="text/javascript"> var i = 1; setInterval(function(){ if(i>4){ i = 1; } document.getElementById("big").src ="img/"+(i++)+".jpg"; },1000);
function changeImage(obj){ document.getElementById("big").src = obj.src; } </script>
<img src="img/1.jpg" id="big" class="big"/><br/> <img src="img/1.jpg" class="small" onmouseover="changeImage(this)" /> <img src="img/2.jpg" class="small" onmouseover="changeImage(this)"/> <img src="img/3.jpg" class="small" onmouseover="changeImage(this)"/> <img src="img/4.jpg" class="small" onmouseover="changeImage(this)"/>
|
2.2.2 停止定时切换
当鼠标移动到小图片上的时候,停止取消定时器
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| var i = 1;
var timeID = setInterval(function(){ if(i>4){ i = 1; } document.getElementById("big").src ="img/"+(i++)+".jpg"; },1000);
function changeImage(obj){ document.getElementById("big").src = obj.src; clearInterval(timeID); }
|
2.2.3 重新开始定时器
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| <style> .big{ width: 615px; height: 300px; } .small{ width: 150px; margin-top: 5px; } </style>
<script type="text/javascript"> var timeID; var i;
startTimer();
function changeImage(obj){ document.getElementById("big").src = obj.src; clearInterval(timeID); }
function startTimer(){ i = 1; timeID = setInterval(function(){ if(i>4){ i = 1; } document.getElementById("big").src ="img/"+(i++)+".jpg"; },1000); } </script>
<img src="img/1.jpg" id="big" class="big"/><br/> <img src="img/1.jpg" class="small" onmouseout="startTimer()" onmouseover="changeImage(this)" /> <img src="img/2.jpg" class="small" onmouseout="startTimer()" onmouseover="changeImage(this)"/> <img src="img/3.jpg" class="small" onmouseout="startTimer()" onmouseover="changeImage(this)"/> <img src="img/4.jpg" class="small" onmouseout="startTimer()" onmouseover="changeImage(this)"/>
|
2.2.4 继续上一张变化
记录当前已经显示的是第几张
<!-- 控制设置样式 -->
<style>
.big{
width: 615px;
height: 300px;
}
.small{
width: 150px;
/*整体元素距离上部分的元素间距*/
margin-top: 5px;
}
</style>
<!-- JS 的代码 页面脚本 -->
<script type="text/javascript">
var timeID;// timeID 当前定时器的编号
var i = 1;// 定义的 图片 src 的数字
startTimer();
function changeImage(obj,index){
// 把传入的 Obj 对象的 src 换给 第一个 大图片的 src 属性
document.getElementById("big").src = obj.src;
// 停止切换
clearInterval(timeID);// 取消定时器
// 获取属性,当前是第几张
i = ++index;
}
// 启动定时器的函数
function startTimer(){
// 设置一个 1s 更换 src 数字的定时器
// 参数1:匿名函数,调用的函数
// 参数2:间隔的时间 时间单位是 毫秒
timeID = setInterval(function(){
if(i>4){
// 控制 i 的最大值是 4
i = 1;
}
// 获取页面的 img dom对象
// document.getElementById 通过ID 获取页面 DOM元素
// i++ 自增
document.getElementById("big").src ="img/"+(i++)+".jpg";
},1000);
}
</script>
<img src="img/1.jpg" id="big" class="big"/><br/>
<img src="img/1.jpg" class="small" onmouseout="startTimer()" onmouseover="changeImage(this,1)" />
<img src="img/2.jpg" class="small" onmouseout="startTimer()" onmouseover="changeImage(this,2)"/>
<img src="img/3.jpg" class="small" onmouseout="startTimer()" onmouseover="changeImage(this,3)"/>
<img src="img/4.jpg" class="small" onmouseout="startTimer()" onmouseover="changeImage(this,4)"/>
版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。您可以自由复制、散布、展示及演出本作品;若您改变、转变或更改本作品,仅在遵守与本作品相同的许可条款下,您才能散布由本作品产生的派生作品!由于本人水平有限,不保证作品内容准确无误,亦不承担任何由于使用此作品所导致的损失。