麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 語言 > JavaScript > 正文

jquery實現(xiàn)鼠標(biāo)懸浮停止輪播特效

2024-05-06 16:26:01
字體:
供稿:網(wǎng)友
這篇文章主要介紹了jquery實現(xiàn)鼠標(biāo)懸浮停止輪播特效,鼠標(biāo)懸停在圖片上則停止輪播,感興趣的小伙伴們可以參考一下
 

本文實例講述了jquery實現(xiàn)鼠標(biāo)懸浮停止輪播特效代碼。分享給大家供大家參考。具體如下:
運行效果截圖如下:

jquery實現(xiàn)鼠標(biāo)懸浮停止輪播特效

具體代碼如下:

一、主體程序

<!DOCTYPE html><html>  <head>    <meta charset="utf-8" />    <title>輪播圖①(手動點擊輪播)</title>    <link type="text/css" rel="stylesheet" href="css/layout.css" />  </head>  <body>    <div class="slideShow">      <!--圖片布局開始-->      <ul>        <li><a href="#"><img src="img/picture01.jpg" /></a></li>        <li><a href="#"><img src="img/picture02.jpg" /></a></li>        <li><a href="#"><img src="img/picture03.jpg" /></a></li>        <li><a href="#"><img src="img/picture04.jpg" /></a></li>      </ul>      <!--圖片布局結(jié)束-->            <!--按鈕布局開始-->      <div class="showNav">        <span class="active">1</span>        <span>2</span>        <span>3</span>        <span>4</span>      </div>      <!--按鈕布局結(jié)束-->    </div>    <script src="js/jquery-1.11.3.js"></script>    <script src="js/layout.js"></script>  </body></html>

二、CSS樣式

*{  margin: 0;  padding: 0;}ul{  list-style: none;}.slideShow{  width: 346px;  height: 210px;   /*其實就是圖片的高度*/  border: 1px #eeeeee solid;  margin: 100px auto;  position: relative;  overflow: hidden;  /*此處需要將溢出框架的圖片部分隱藏*/}.slideShow ul{  width: 2000px;  position: relative;   /*此處需注意relative : 對象不可層疊,但將依據(jù)left,right,top,bottom等屬性在正常文檔流中偏移位置,如果沒有這個屬性,圖片將不可左右移動*/}.slideShow ul li{  float: left;   /*讓四張圖片左浮動,形成并排的橫著布局,方便點擊按鈕時的左移動*/  width: 346px;}.slideShow .showNav{   /*用絕對定位給數(shù)字按鈕進(jìn)行布局*/  position: absolute;  right: 10px;  bottom: 5px;  text-align:center;  font-size: 12px;    line-height: 20px;}.slideShow .showNav span{  cursor: pointer;  display: block;  float: left;  width: 20px;  height: 20px;  background: #ff5a28;  margin-left: 2px;  color: #fff;}.slideShow .showNav .active{  background: #b63e1a;}

三、jQuery程序
先說一下鼠標(biāo)懸浮圖片輪播停止的原理:

  • 1、當(dāng)鼠標(biāo)懸浮在框架上方時,清除定時器即用clearInterval(timer)關(guān)閉定時器,使自動輪播停止
  • 2、當(dāng)鼠標(biāo)離開框架上方時,重新啟動定時器
  • 3、鼠標(biāo)的懸浮和離開借助于hover函數(shù)

hover(over,out)一個模仿懸停事件(鼠標(biāo)移動到一個對象上面及移出這個對象)的方法。這是一個自定義的方法,它為頻繁使用的任務(wù)提供了一種“保持在其中”的狀態(tài)。
參數(shù):
      over (Function) : 鼠標(biāo)移到元素上要觸發(fā)的函數(shù)。
      out (Function): 鼠標(biāo)移出元素要觸發(fā)的函數(shù)。

下面來看jQuery程序:

$(document).ready(function(){  var slideShow=$(".slideShow"),   //獲取最外層框架的名稱    ul=slideShow.find("ul"),       showNumber=slideShow.find(".showNav span"),//獲取按鈕    oneWidth=slideShow.find("ul li").eq(0).width();  //獲取每個圖片的寬度    var timer=null;  //定時器返回值,主要用于關(guān)閉定時器    var iNow=0;   //iNow為正在展示的圖片索引值,當(dāng)用戶打開網(wǎng)頁時首先顯示第一張圖,即索引值為0        /*手動點擊按鈕進(jìn)行圖片輪播代碼開始*/    showNumber.on("click",function(){      //為每個按鈕綁定一個點擊事件         $(this).addClass("active").siblings().removeClass("active");  //按鈕點擊時為這個按鈕添加高亮狀態(tài),并且將其他按鈕高亮狀態(tài)去掉      var index=$(this).index(); //獲取哪個按鈕被點擊,也就是找到被點擊按鈕的索引值      iNow=index;      ul.animate({        "left":-oneWidth*iNow,  //注意此處用到left屬性,所以ul的樣式里面需要設(shè)置position: relative; 讓ul左移N個圖片大小的寬度,N根據(jù)被點擊的按鈕索引值iNow確定      })    });    /*手動點擊按鈕進(jìn)行圖片輪播代碼結(jié)束*/            /*定時自動輪播圖片代碼開始*/    timer=setInterval(function(){    //打開定時器      iNow++;             //讓圖片的索引值次序加1,這樣就可以實現(xiàn)順序輪播圖片      if(iNow>showNumber.length-1){  //當(dāng)?shù)竭_(dá)最后一張圖的時候,讓iNow賦值為第一張圖的索引值,輪播效果跳轉(zhuǎn)到第一張圖重新開始        iNow=0;      }      showNumber.eq(iNow).trigger("click");  //模擬觸發(fā)數(shù)字按鈕的click    },2000);  //2000為輪播的時間    /*定時自動輪播圖片代碼結(jié)束*/        /*鼠標(biāo)懸浮圖片停止輪播代碼開始*/    slideShow.hover(      function(){        clearInterval(timer);      },function(){        timer=setInterval(function(){    //打開定時器          iNow++;             //讓圖片的索引值次序加1,這樣就可以實現(xiàn)順序輪播圖片          if(iNow>showNumber.length-1){  //當(dāng)?shù)竭_(dá)最后一張圖的時候,讓iNow賦值為第一張圖的索引值,輪播效果跳轉(zhuǎn)到第一張圖重新開始            iNow=0;          }          showNumber.eq(iNow).trigger("click");  //模擬觸發(fā)數(shù)字按鈕的click        },2000);  //2000為輪播的時間      }    );    /*鼠標(biāo)懸浮圖片停止輪播代碼結(jié)束*/})

從上圖可以看出開啟定時器的代碼是重復(fù)的,所以這里可以定義一個自動播放的函數(shù)autoPlay()來精簡代碼,經(jīng)過精簡后的代碼如下:

/*定時自動輪播圖片代碼開始*/    function autoPlay(){      timer=setInterval(function(){    //打開定時器      iNow++;             //讓圖片的索引值次序加1,這樣就可以實現(xiàn)順序輪播圖片      if(iNow>showNumber.length-1){  //當(dāng)?shù)竭_(dá)最后一張圖的時候,讓iNow賦值為第一張圖的索引值,輪播效果跳轉(zhuǎn)到第一張圖重新開始        iNow=0;      }      showNumber.eq(iNow).trigger("click");  //模擬觸發(fā)數(shù)字按鈕的click      },2000);  //2000為輪播的時間    }    autoPlay(); /*定時自動輪播圖片代碼結(jié)束*/

定義完成后不要忘記調(diào)用這個函數(shù),即autoPlay();
那么最終版的jQuery程序如下:

$(document).ready(function(){  var slideShow=$(".slideShow"),   //獲取最外層框架的名稱    ul=slideShow.find("ul"),       showNumber=slideShow.find(".showNav span"),//獲取按鈕    oneWidth=slideShow.find("ul li").eq(0).width();  //獲取每個圖片的寬度    var timer=null;  //定時器返回值,主要用于關(guān)閉定時器    var iNow=0;   //iNow為正在展示的圖片索引值,當(dāng)用戶打開網(wǎng)頁時首先顯示第一張圖,即索引值為0        /*手動點擊按鈕進(jìn)行圖片輪播代碼開始*/    showNumber.on("click",function(){      //為每個按鈕綁定一個點擊事件         $(this).addClass("active").siblings().removeClass("active");  //按鈕點擊時為這個按鈕添加高亮狀態(tài),并且將其他按鈕高亮狀態(tài)去掉      var index=$(this).index(); //獲取哪個按鈕被點擊,也就是找到被點擊按鈕的索引值      iNow=index;      ul.animate({        "left":-oneWidth*iNow,  //注意此處用到left屬性,所以ul的樣式里面需要設(shè)置position: relative; 讓ul左移N個圖片大小的寬度,N根據(jù)被點擊的按鈕索引值iNow確定      })    });    /*手動點擊按鈕進(jìn)行圖片輪播代碼結(jié)束*/            /*定時自動輪播圖片代碼開始*/    function autoPlay(){      timer=setInterval(function(){    //打開定時器      iNow++;             //讓圖片的索引值次序加1,這樣就可以實現(xiàn)順序輪播圖片      if(iNow>showNumber.length-1){  //當(dāng)?shù)竭_(dá)最后一張圖的時候,讓iNow賦值為第一張圖的索引值,輪播效果跳轉(zhuǎn)到第一張圖重新開始        iNow=0;      }      showNumber.eq(iNow).trigger("click");  //模擬觸發(fā)數(shù)字按鈕的click      },2000);  //2000為輪播的時間    }    autoPlay();    /*定時自動輪播圖片代碼結(jié)束*/        /*鼠標(biāo)懸浮圖片停止輪播代碼開始*/    slideShow.hover(      function(){        clearInterval(timer);      },autoPlay    );    /*鼠標(biāo)懸浮圖片停止輪播代碼結(jié)束*/})

以上就是本文的全部內(nèi)容,大家可以結(jié)合下面這兩篇文章進(jìn)行學(xué)習(xí):



注:相關(guān)教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 黄色片网站免费在线观看 | av在线免费观看网 | 黄色视屏免费观看 | 久久精品国产99国产精品亚洲 | 免费观看视频91 | 欧美性猛交xxxxx按摩国内 | 一级大片久久 | 西川av在线一区二区三区 | 国产羞羞视频在线观看 | 毛片一级网站 | 91视频久久 | 欧美成人一区免费视频 | 中文日产幕无线码6区免费版 | 亚洲第一成网站 | 亚洲黑人在线观看 | 日本高清一级片 | 天天夜天天操 | 久久羞羞 | av电影院在线观看 | chinesexxxx极品少妇 | 轻点插视频| 高清中文字幕在线 | 久久国产成人午夜av浪潮 | 久久不射电影 | 狠狠久久| 成人毛片视频在线观看 | 欧美性受xxxx人人本视频 | 久久综合精品视频 | 黄色毛片观看 | 亚洲国产精品500在线观看 | 亚洲人成网站在e线播放 | 亚洲视频在线免费看 | 特级毛片a级毛片100免费 | 久久爽精品区穿丝袜 | 国产午夜精品久久久久久免费视 | 免费在线观看成人av | 日本免费一区二区三区四区 | 亚洲一区二区观看播放 | 久久亚洲精品国产 | 蜜桃一本色道久久综合亚洲精品冫 | 女人裸体让男人桶全过程 |