茄子在线看片免费人成视频,午夜福利精品a在线观看,国产高清自产拍在线观看,久久综合久久狠狠综合

    <s id="ddbnn"></s>
  • <sub id="ddbnn"><ol id="ddbnn"></ol></sub>

  • <legend id="ddbnn"></legend><s id="ddbnn"></s>

    用JS實(shí)現(xiàn)圖片輪播效果代碼(一)
    來源:易賢網(wǎng) 閱讀:1655 次 日期:2016-07-12 15:06:42
    溫馨提示:易賢網(wǎng)小編為您整理了“用JS實(shí)現(xiàn)圖片輪播效果代碼(一)”,方便廣大網(wǎng)友查閱!

    這篇文章主要介紹了用JS實(shí)現(xiàn)圖片輪播效果代碼(一)的相關(guān)資料,非常不錯,具有參考借鑒價(jià)值,需要的朋友可以參考下

    一.實(shí)現(xiàn)原理

    (1)將所有圖片放在一個父容器div里面,通過display屬性來設(shè)置圖片的出現(xiàn)與隱藏;

    (2)輪播圖分為手動輪播和自動輪播;

    手動輪播的重點(diǎn)是每次點(diǎn)擊圖片下方的小圓圈,獲得它的索引號,并讓與之對應(yīng)索引號的圖片顯示,并且此時的小圓圈為高亮顯示;

    自動輪播:利用定時器setInterval(),來每隔一定的時間來播放一次圖片。

    (3)所有的基礎(chǔ)知識:dom操作,定時器,事件運(yùn)用。

    二.輪播圖頁面布局:

    <div id="content"> <!-- 總的父容器 -->

    <div class="carousel-inner"> <!-- 包含圖片的容器 -->

    <div class="item "><img src="./img/lunbo1.jpg" alt="第一張圖片"></div>

    <div class="item"><img src="./img/lunbo2.jpg" alt="第二張圖片"></div>

    <div class="item"><img src="./img/lunbo3.jpg" alt="第三張圖片"></div>

    </div>

    <!-- 圖片下方的指示圓圈-->

    <ul class="carousel-indicators">

    <li id='pic1'>●</li>

    <li id='pic2'>●</li>

    <li id='pic3'>●</li>

    </ul>

    <!-- 圖片左右方來回滾動圖片的左右箭頭-->

    <a href="#" class="carousel-control prev"><span><</span></a>

    <a href="#" class="carousel-control next"><span>></span></a>

    </div>

    三.輪播圖的css樣式:

    #content{

    width: 100%;

    height:500px;

    position: relative;

    }

    .carousel-inner{

    position: relative;

    width: 100%;

    overflow: hidden;

    height:500px;

    }

    .carousel-inner>.item>img{

    display: block;

    line-height: 1;

    z-index: 1;

    }

    .carousel-indicators{

    position: absolute;

    bottom:10px;

    left:45%;

    z-index: 2;

    list-style-type: none;

    }

    .carousel-indicators li{

    display:inline-block;

    padding: 0 15px;

    font-size: 24px;

    color:#999;

    cursor: pointer;

    z-index: 2;

    }

    .active1{

    font-size: 28px;

    color:#fff;

    }

    .carousel-control{

    position: absolute;

    text-decoration:none;

    color: #999;

    font-weight: bold;

    opacity: .5;

    font-size: 40px;

    z-index: 3;

    }

    .carousel-control:hover{

    color:fff;

    text-decoration: none;

    opacity: .9;

    outline: none;

    font-size: 42px;

    }

    .prev{

    top: 30%;

    left:20px;

    }

    .next{

    top:30%;

    right: 20px;

    }

    四.輪播圖的js實(shí)現(xiàn)代碼:

    window.onload = function(){

    //輪播初始化

    var lunbo = document.getElementById('content');

    var imgs = lunbo.getElementsByTagName('img');

    var uls = lunbo.getElementsByTagName('ul');

    var lis = lunbo.getElementsByTagName('li');

    //初始狀態(tài)下,一個圓圈為高亮模式

    lis[0].style.fontSize = '26px';

    lis[0].style.color = '#fff';

    //定義一個全局變量,用來進(jìn)行自動輪播圖片順序的變化

    var pic_index = 1;

    //自動輪播.使用pic_time記錄播放,可以隨時使用clearInterval()清除掉。

    var pic_time = setInterval(autobofang,3000);

    //手動輪播

    for(var i=0;i<lis.length;i++){

    lis[i].addEventListener("mouseover",change,false);

    }

    function change(event){

    var event=event||window.event;

    var target=event.target||event.srcElement;

    var children = target.parentNode.children;

    for(var i=0;i<children.length;i++){

    if(target == children[i]){

    picChange(i);

    }

    }

    }

    //圖片切換函數(shù)

    function picChange(i){

    //讓所有圖片都不顯示,所有圓圈都為普通樣式

    for(var j=0;j<imgs.length;j++){

    imgs[j].style.display = 'none'; lis[j].style.fontSize = '24px';

    lis[j].style.color = '#999';

    }

    //讓選中的索引的圖片顯示,對應(yīng)的圓圈高亮

    imgs[i].style.display = 'block';

    lis[i].style.fontSize = '26px';

    lis[i].style.color = '#fff';

    }

    //自動播放的事件處理

    function autobofang(){

    if(pic_index >= lis.length){

    pic_index = 0;

    }

    change1(pic_index);

    pic_index++;

    }

    //自動播放的圖片轉(zhuǎn)化中的事件

    function change1(index){

    picChange(index);

    //鼠標(biāo)移入ul標(biāo)簽,自動播放圖片暫停

    uls[0].addEventListener("mouseover",pause,false);

    //鼠標(biāo)移出ul標(biāo)簽,自動播放圖片繼續(xù)

    uls[0].addEventListener("mouseout",go,false);

    }

    //自動播放暫停函數(shù)

    function pause(event){

    var event=event||window.event;

    var target=event.target||event.srcElement;

    switch(target.id){

    case "pic1":

    clearInterval(pic_time);

    break;

    case "pic2":

    clearInterval(pic_time);

    break;

    case "pic3":

    clearInterval(pic_time);

    break;

    }

    }

    //自動播放圖片繼續(xù)函數(shù)

    function go(event){

    var event=event||window.event;

    var target=event.target||event.srcElement;

    switch(target.id){

    case "pic1":

    pic_index = 1;

    pic_time = setInterval(autobofang,3000);

    break;

    case "pic2":

    pic_index = 2;

    pic_time = setInterval(autobofang,3000);

    break;

    case "pic3":

    pic_index = 3;

    pic_time = setInterval(autobofang,3000);

    break;

    }

    }

    }

    六.遇到的問題與不足

    問題:當(dāng)鼠標(biāo)第一次移入ul標(biāo)簽時,自動輪播圖片停止,鼠標(biāo)移出,自動輪播繼續(xù),但是隨著運(yùn)行,輪播圖片的變化速度越來越快,而且這時點(diǎn)擊ul標(biāo)簽已經(jīng)不起作用了。

    問題原因:在后面停止輪播后再次輪播開始使用定時器的時候,沒有給賦值給pic_time來記錄,也就沒有再次鼠標(biāo)移到ul標(biāo)簽而清除定時器,因此導(dǎo)致再次點(diǎn)擊ul標(biāo)簽不能暫停自動輪播播放,而且速度 越來越快。

    不足:沒有實(shí)現(xiàn)類似淘寶輪播圖那樣平滑過渡的無現(xiàn)滾動的效果,左右箭頭的指示作用也沒有完成。這些在后期會繼續(xù)學(xué)習(xí),繼續(xù)來完善,來分享.

    更多信息請查看網(wǎng)絡(luò)編程
    易賢網(wǎng)手機(jī)網(wǎng)站地址:用JS實(shí)現(xiàn)圖片輪播效果代碼(一)
    由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

    2026上岸·考公考編培訓(xùn)報(bào)班

    • 報(bào)班類型
    • 姓名
    • 手機(jī)號
    • 驗(yàn)證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機(jī)站點(diǎn) | 投訴建議
    工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
    云南網(wǎng)警備案專用圖標(biāo)
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
    云南網(wǎng)警報(bào)警專用圖標(biāo)