輪播圖
/*輪播圖基本功能:
* 1圖片切換
* 1.1圖片在中間顯示
* 1.2圖片淡入淡出
* 2左右各有一個按鈕
* 2.1點擊左按鈕,圖片切換上一張
* 2.2點擊右按鈕,圖片切換下一張
* 2.3鼠標滑過按鈕,按鈕顏色加深
* 3底部的導航點
* 3.1圖片為第幾張時,點在那第幾張
* 3.2鼠標滑到第幾個點,圖片切換到第幾張
* 4圖片自動輪播
* 4.1默認自動下一張
* 4.2鼠標在圖片范圍時,停止切換
* 4.3鼠標離開圖片范圍,恢復自動切換
* 5鼠標放在圖片范圍時,變為小手樣式
*/
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript" src="js/jquery-3.2.1.js"></script>
<style type="text/css">
/*容器*/
#content{
padding: 0px;
margin: 0px auto;
width: 966px;
height: 644px;
position: relative;
}
/*容器中圖片樣式*/
#content img{
width: 966px;
height: 644px;
position: absolute;
}
/*在光標圖片上時,為小手狀態*/
#content:hover{
cursor: pointer;
}
/*圖片隱藏*/
.imgshow{
display: block;
}
/*圖片顯示*/
.imghide{
display: none;
}
#left,#right{
position: absolute;
width: 25px;
height: 50px;
background-color: gray;
color: white;
line-height: 50px;
text-align: center;
font-size: 22px;
border-radius:5px ;
}
#left{
top: 297px;
left: 0px;
}
#right{
top:297px;
margin-left: 940px;
}
#left:hover,#right:hover{
opacity: 0.5;
}
#nav:hover{
cursor: default;
}
#nav div{
width: 20px;
height: 20px;
border-radius: 10px;
margin-left: 10px;
margin-top: 5px;
float: left;
}
.divshow{
background-color: red;
}
.divhide{
background-color: lawngreen;
}
#nav div:hover{
opacity: 0.5;
}
#nav{
position: absolute;
width: 200px;
height: 30px;
margin-top:590px ;
margin-left: 25px;
}
</style>
</head>
<body>
<!--存放圖片、按鈕、導航點-->
<div id="content"class="conClass">
<!--圖片-->
<img src="image/美女 (1).jpg"class="imgshow"/>
<img src="image/美女 (2).jpg"class="imghide"/>
<img src="image/美女 (3).jpg"class="imghide"/>
<img src="image/美女 (4).jpg"class="imghide"/>
<img src="image/美女 (5).jpg"class="imghide"/>
<img src="image/美女 (6).jpg"class="imghide"/>
<div id="left"><</div>
<div id="right">></div>
<div id="nav">
<div class="divshow"></div>
<div class="divhide"></div>
<div class="divhide"></div>
<div class="divhide"></div>
<div class="divhide"></div>
<div class="divhide"></div>
</div>
</div>
<script type="text/javascript">
/*輪播圖基本功能:
* 1圖片切換
* 1.1圖片在中間顯示
* 1.2圖片淡入淡出
* 2左右各有一個按鈕
* 2.1點擊左按鈕,圖片切換上一張
* 2.2點擊右按鈕,圖片切換下一張
* 2.3鼠標滑過按鈕,按鈕顏色加深
* 3底部的導航點
* 3.1圖片為第幾張時,點在那第幾張
* 3.2鼠標滑到第幾個點,圖片切換到第幾張
* 4圖片自動輪播
* 4.1默認自動下一張
* 4.2鼠標在圖片范圍時,停止切換
* 4.3鼠標離開圖片范圍,恢復自動切換
* 5鼠標放在圖片范圍時,變為小手樣式
*/
/*實現思路
* 所有圖片在同一位置
* 一張圖片展示,其余圖片隱藏
*/
//創建一個變量來存放當前圖片的位置(索引位置)
var showindex=0;
//定時器調用的方法
function timershow(){
/*樣式切換圖片
var index=$("img").index($(".imgshow"));
//隱藏當前圖片
$("img").eq(index).removeClass("imgshow").addClass("imghide");
if(index==5){
index=-1
}
$("img").eq(index+1).removeClass("imghide").addClass("imgshow");
*/
var imageindex=showindex;
//點擊按鈕,下標向后移動
showindex++;
//切換到第一張圖片,showindex改為0
if(showindex==6){
showindex=0
}
//返回當前圖片的位置
//console.log(imageindex);
//上一張圖片淡出
$("img").eq(imageindex).fadeOut(1000);
//當前圖片淡出
$("img").eq((imageindex+1)%6).fadeIn(1000);
//上一個導航點樣式修改為divhide
$("#nav div").eq(imageindex).removeClass("divshow").addClass("divhide");
//當前導航點樣式修改為divshow
$("#nav div").eq((imageindex+1)%6).removeClass("divhide").addClass("divshow");
}
$(function(){
//自動調用方法
var timer=setInterval(timershow,2000);
//上一張圖片
$("#right").click(function(){
/*樣式切換圖片
var index=$("img").index($(".imgshow"));
//隱藏當前圖片
$("img").eq(index).removeClass("imgshow").addClass("imghide");
if(index==5){
index=-1
}
$("img").eq(index+1).removeClass("imghide").addClass("imgshow");
*/
var imageindex=showindex;
//點擊按鈕,下標向后移動
showindex++;
//切換到第一張圖片,showindex改為0
if(showindex==6){
showindex=0
}
//返回當前圖片的位置
console.log(imageindex);
//上一張圖片淡出
$("img").eq(imageindex).fadeOut(1000);
//當前圖片淡出
$("img").eq((imageindex+1)%6).fadeIn(1000);
//上一個導航點樣式修改為divhide
$("#nav div").eq(imageindex).removeClass("divshow").addClass("divhide");
//當前導航點樣式修改為divshow
$("#nav div").eq((imageindex+1)%6).removeClass("divhide").addClass("divshow");
});
//下一張圖片
$("#left").click(function(){
console.log("修改前:"+showindex)
var imageindex=showindex;
//點擊按鈕,下標向后移動
showindex--;
//切換到最后一張圖片,showindex變為5
if(showindex==-1){
showindex=5;
}
//上一張圖片淡出
$("img").eq(imageindex).fadeOut(1000);
//當前圖片淡出
$("img").eq((imageindex-1)%6).fadeIn(1000);
//上一個導航點樣式修改為divhide
$("#nav div").eq(imageindex).removeClass("divshow").addClass("divhide");
//當前導航點樣式修改為divshow
$("#nav div").eq((imageindex-1)%6).removeClass("divhide").addClass("divshow");
});
//導航點
$("#nav div").mouseover(function(){
console.log("修改前"+showindex);//修改前的位置
var divindex=$("#nav div").index($(this));//獲取當前鼠標在哪一個點上
//選定的為當前的自己則不產生動畫效果
if(divindex!=showindex)
{
//將以前的點的樣式修改成divhide
$("#nav div").eq(showindex).removeClass("divshow").addClass("divhide");
//將現在的點的樣式修改成div
$("#nav div").eq(divindex).removeClass("divhide").addClass("divshow");
//以前圖片淡出
$("img").eq(showindex).fadeOut(1000);
//新圖片淡入
$("img").eq(divindex).fadeIn(1000);
showindex=divindex;
console.log("修改后"+divindex);//修改后的位置
}
});
//鼠標在圖片范圍時停止切換(清除定時器)
$("#content").mouseenter(function() {
window.clearInterval(timer);
}
);
$("#content").mouseleave(function(){
timer=window.setInterval(timershow,2000);
});
});
</script>
</body>
</html>