閱讀645 返回首頁    go 技術社區[雲棲]


jq實現選項聯動輪播

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <link rel="stylesheet" href="css/baner.css">
  <script src="js/jquery-1.11.3.js"></script>
  <script src="js/index.js"></script>
  <title>JQ輪播三級連鎖</title>
 </head>
 <body>
    <div class="parent">
      <div class="top">
       <p>
            <a href="">創意空間</a>
            <a href="">永恒的愛</a>
            <a href="">浪漫真情</a>
            <a href="">珍貴獨特</a>
       </p>
      </div>
      <div class="fours">
        <a href=""><img src="img/1.jpg" alt=""></a>
        <a href=""><img src="img/2.jpg" alt=""></a>
        <a href=""><img src="img/3.jpg" alt=""></a>
        <a href=""><img src="img/4.jpg" alt=""></a>
      </div>
    </div>
 </body>
</html>
複製代碼

CSS

複製代碼
*{
    border:none;
    margin: 0;
    padding: 0;
    list-style: none;
    outline: none;
}
html,body{
    width: 100%;
    height: 100%;
}
/*方法二*/
body{
    display: flex;
    align-items: center;/****水平居中****/
    justify-content: center;/*垂直居中*/
}
.parent{
    width: 750px;
    height: 400px;
    /*方法一*/
    /*margin: 0 auto;*/
    /*position: relative;*/
    /*top: 50%;*/
    /*margin-top: -200px;*/
}
/*輪播*/
.top p{
    width: 90%;
    margin: 0 auto;
}
.top p a{
    display: inline-block;
    line-height: 30px;
    width: 23%;
    padding: 10px 0;
    text-align: center;
    text-decoration: none;
    border: 2px solid transparent;
    color: slategray;
}
.top p a.selected{
    border: 2px solid #e4393c;
    color: #e4393c;
}
/*圖片*/
.fours{
    width: 650px;
    margin: 0 auto;
    height: 300px;
    position: relative;
    margin-top: 30px;
}
.fours a{
    position: absolute;
}
複製代碼

JS

定義變量和定時器,變量等價於eq(index)中index,自動輪播是可以的,關鍵在於,鼠標進入選項卡區域時候,怎麼對應想要的輪播畫麵,

方法:停止定時器,獲取當前選項卡下標,匹配對應的輪播畫麵顯示出來。

複製代碼
var  a=0;
var t=null;
$(function(){
   $('.fours>a:not(:first-child)').hide();
   t=setInterval("autoMove()",2000);
   //鼠標進入輪播停止
   $('.parent').hover(function(){clearInterval(t)},function(){t=setInterval("autoMove()",2000);});
// 當鼠標進去對應選項時候圖片對應變化
   $(".top p>a").hover(function(){
      clearInterval(t);
      var num=$(this).index();
      showThis(num);
    //console.log(num);
   })
});
function autoMove(){
 a++;
 if(a>=4){
   a=0;
  }
 play(a);
}
function play(a){
   $('.fours>a').filter(":visible").fadeOut(500).parent().children().eq(a).fadeIn(1000);
   $('.top p a').eq(a).addClass("selected").siblings().removeClass("selected");
}
//鼠標進入的情況
function showThis(sum){
   $(".fours>a").eq(sum).fadeIn(1000).siblings().fadeOut(500);
   $(".top p a").eq(sum).addClass("selected").siblings().removeClass("selected");
}

最後更新:2017-11-05 12:05:07

  上一篇:go  CSS3中DIV水平垂直居中-2(3)
  下一篇:go  關於webStrom-11.1配置less且自動生成.css和自動壓縮為.min.css/.min.js