最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

原生JS實(shí)現(xiàn)圖片輪播 JS實(shí)現(xiàn)小廣告插件

 更新時(shí)間:2021年09月22日 11:42:30   作者:zxt_x  
這篇文章主要為大家詳細(xì)介紹了原生JS實(shí)現(xiàn)圖片輪播、小廣告插件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

最近想用原生JS多實(shí)現(xiàn)一些小功能,現(xiàn)在寫到博客里,大家可以借鑒,有問題歡迎指出。

輪播圖

需求:

圖片循環(huán)輪播,可點(diǎn)擊左右切換,切換狀態(tài)與<li>綁定,鼠標(biāo)移入圖片懸停,鼠標(biāo)移出圖片繼續(xù)循環(huán)切換。

<!DOCTYPE html>
 
<html lang="en">
 
<head>
 
    <meta charset="UTF-8">
    <title>原生js輪播圖片</title>
 
</head>
 
<style>
    .container{
        width: 100%;
        height: 500px;
        position: relative;
    }

    .content{
        width: 900px;
        height: 450px;
        position: relative;
        overflow: hidden; 
        border: 1px solid seagreen; 
        margin: 0 auto;
    }
 
    .slider-img{ 
        width: 900px; 
        height: 450px; 
        margin: 10px auto; 
    }
 
    .slider-img img{
        vertical-align: top;
        width: 800px;
        height: 400px;
        margin: 10px 50px;
        display: block;
 
    }
 
    .left{
        margin-top: -300px;
        margin-left: 50px;
        width: 100px;
        height: 100px;
    }
 
    .left img,.right img{
        width: 100px;
        height: 100px;
    }
 
    .right{
        margin-top: -100px;
        margin-right: 50px;
        float: right;
        width: 100px;
        height: 100px;
 
    }
 
 
 
    .dot{
        position: relative;
        top: 23%;
        left: 43%;
        width: 50%;
    }
 
    .dotul{
        width: 450px;
    }

    .dotul li{ 
        width: 20px; 
        height: 20px;
        background-color: seagreen;
        list-style: none;
        float: left;
        border-radius: 20px; 
        margin-left: 15px; 
        z-index: 999; 
        cursor: pointer; 
    }
 
    .active{
        background-color: orangered !important;
    }
 
 
 
</style>
 
<body>
 
    <div class="container" id="container">
 
        <div class="content" id="content">
            <div class="slider-img" id="slider" >
                  <a href="javascript:;" >
                    <img src="./img/88.jpg" alt="" id="img">
                </a>
            </div>
 
        </div>
        <div class="btn">
            <div class="left" id="left">
                <a href=" ###" ><img src=""></a>
            </div>
 
            <div class="right" id="right">
                <a href=" ###" ><img src=""></a>
            </div>
        </div>
 
        <div class="dot">
            <ul id="ul" class="dotul">
                <li class="active"></li>
                <li></li>
                <li></li>
               <li></li>
            </ul>
        </div>
</div>

js代碼,使用時(shí)記得在html里引入JS。

var container = document.getElementById("container"); 
var content = document.getElementById("content");
var slider = document.getElementById("slider");
var img = document.getElementById("img");
var ul = document.getElementById("ul"); 
var li = document.getElementsByTagName("li"); 
var left = document.getElementById("left"); 
var right = document.getElementById("right"); 
var num = 0;
var timer = null;    
var picList = ["./img/88.jpg","./img/are.jpg","./img/family.jpg","./img/one.jpg"];
//將li與list下標(biāo)對(duì)應(yīng)
 

    //設(shè)置展示圖片的方法,展示時(shí),li的圓點(diǎn)與圖片綁定在一起
    ShowPicture = function() {
       img.src = picList[num];
       for(var i = 0 ; i < li.length;i++) {
           li[i].className = '';
       }
       li[num].className = 'active';
    }
  
    //左點(diǎn)擊,如果已經(jīng)是第一張了就返回最后一張

    left.onclick = function() {
        num--;
        if(num < 0) {
           num = picList.length-1;
        }
        ShowPicture();
    }
  

    //右點(diǎn)擊,若已經(jīng)是最后一張返回第一張
    right.onclick = function() {
        num++;
        if(num >= picList.length) {   //3
            num = 0;
        }
        ShowPicture();
    }
    
     //實(shí)現(xiàn)點(diǎn)擊圓點(diǎn)跳轉(zhuǎn)對(duì)應(yīng)圖片,將li與list下標(biāo)對(duì)應(yīng)list.index=li.index
   
     for(var i = 0; i < picList.length ; i++) {
         li[i].index = i;
         li[i].onclick = function() {
             num = this.index;
             ShowPicture();
         }
     }

    //自動(dòng)輪播圖片,每次調(diào)用要記得清除定時(shí)器,并在調(diào)用后回歸定時(shí)器,防止時(shí)間差越變?cè)酱?

    autoChange = function() {
        clearInterval(timer);
        timer = setInterval(() => {
            num++;
            num %= picList.length;
            ShowPicture();
        }, 3000);
        return timer;
    }
    window.onload = autoChange;

   
    //事件
    img.onmouseover = function() {
        clearInterval(timer);
    }
    img.onmouseleave = autoChange;

廣告插件

需求:頁面加載結(jié)束后彈出廣告,廣告輪播展示,鼠標(biāo)移入懸停,移出繼續(xù)展示,點(diǎn)X可刪除。

<div id="win">
        <img id = "img" />
        <button id = "ad_btn">X</button>  
        //我這是練習(xí),叉號(hào)用的X替代,自己做項(xiàng)目加入時(shí)可以換成Icon
</div>
//頁面加載結(jié)束彈出廣告,廣告切換展示,點(diǎn)擊X可刪除,
var ad = document.getElementById('win');
var img = document.getElementById('img');
var ad_btn  = document.getElementById('ad_btn');
var timer;
window.onload = function () {
    // clearInterval(timer);
    timer = setTimeout(() => {
            ad.style.display = 'block';  
        }, 2000);
        change();
}

var count=0;
var num = 0;
var imgTimer = null;
//picture srcList
var picList = ['../img/88.jpg','../img/one.jpg','../img/family.jpg','../img/are.jpg'];
function change() {
    clearInterval(imgTimer)
    imgTimer = setInterval(() => {
       if(count === picList.length) {
           count = 0;
           resetShow();
       } else {
           startShow();
       }
       count++;          
   }, 3000);
}
function resetShow() {
    img.src = picList[0];
    num = 0;
    startShow();
}

function startShow() {
    if(num < picList.length) {
        img.src = picList[num++];
    } else {
        resetShow();
    }
   
}


ad_btn.addEventListener('click' , (e)=>{
    ad.style.display = 'none';
    clearTimeout(timer)
});

ad.addEventListener('mouseover' , ()=>{
    clearInterval(imgTimer);
})
ad.onmouseleave = function() {
    change();
}

實(shí)現(xiàn)展示:

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • JS讀寫CSS樣式的方法匯總

    JS讀寫CSS樣式的方法匯總

    這篇文章主要為大家詳細(xì)匯總了JS讀寫CSS樣式的方法,內(nèi)容詳盡,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • 詳解JavaScript函數(shù)對(duì)象

    詳解JavaScript函數(shù)對(duì)象

    函數(shù)是由事件驅(qū)動(dòng)的或者當(dāng)它被調(diào)用時(shí)執(zhí)行的可重復(fù)使用的代碼塊,JavaScript 中的所有事物都是對(duì)象:字符串、數(shù)值、數(shù)組、函數(shù),下面通過本文給大家介紹JavaScript函數(shù)對(duì)象,感興趣的朋友一起學(xué)習(xí)吧
    2015-11-11
  • js獲取當(dāng)前日期時(shí)間及其它日期操作匯總

    js獲取當(dāng)前日期時(shí)間及其它日期操作匯總

    這篇文章主要介紹了js獲取當(dāng)前日期時(shí)間及其它日期操作匯總,感興趣的小伙伴們可以參考一下
    2016-03-03
  • javascript實(shí)時(shí)獲取鼠標(biāo)坐標(biāo)值并顯示的方法

    javascript實(shí)時(shí)獲取鼠標(biāo)坐標(biāo)值并顯示的方法

    這篇文章主要介紹了javascript實(shí)時(shí)獲取鼠標(biāo)坐標(biāo)值并顯示的方法,涉及javascript操作鼠標(biāo)事件的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • 完美解決IE不支持Data.parse()的問題

    完美解決IE不支持Data.parse()的問題

    下面小編就為大家?guī)硪黄昝澜鉀QIE不支持Data.parse()的問題。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起 小編過來看看吧
    2016-11-11
  • tween.js緩動(dòng)補(bǔ)間動(dòng)畫算法示例

    tween.js緩動(dòng)補(bǔ)間動(dòng)畫算法示例

    本篇文章主要介紹了tween.js緩動(dòng)補(bǔ)間動(dòng)畫示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-02-02
  • JavaScript可折疊區(qū)域?qū)崿F(xiàn)代碼

    JavaScript可折疊區(qū)域?qū)崿F(xiàn)代碼

    可折疊區(qū)域的基本思想:通過點(diǎn)擊某個(gè)地方來顯示或隱藏屏幕中的某個(gè)區(qū)域。
    2010-10-10
  • 批量實(shí)現(xiàn)面向?qū)ο蟮膶?shí)例代碼

    批量實(shí)現(xiàn)面向?qū)ο蟮膶?shí)例代碼

    本文為大家詳細(xì)介紹下面向?qū)ο蟮睦^承以及如何實(shí)現(xiàn)批量實(shí)現(xiàn)面向?qū)ο?,感興趣的可以參考下哈,希望對(duì)大家有所幫助
    2013-07-07
  • JavaScript實(shí)現(xiàn)顯示隱藏表單文字

    JavaScript實(shí)現(xiàn)顯示隱藏表單文字

    這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)顯示隱藏表單文字,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • js中l(wèi)et和var定義變量的區(qū)別

    js中l(wèi)et和var定義變量的區(qū)別

    這篇文章主要介紹了js中l(wèi)et和var定義變量的區(qū)別,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02

最新評(píng)論

广昌县| 常州市| 黄石市| 井陉县| 阆中市| 获嘉县| 彩票| 邵武市| 灵武市| 鹰潭市| 定安县| 从江县| 长海县| 武强县| 明星| 沁水县| 盖州市| 呼和浩特市| 荣昌县| 申扎县| 贡觉县| 达州市| 崇义县| 朔州市| 平昌县| 新密市| 保德县| 大姚县| 嘉荫县| 水城县| 宜春市| 阿克陶县| 崇礼县| 竹山县| 民丰县| 三亚市| 肇源县| 云梦县| 三都| 安平县| 孙吴县|