JavaScript仿商城實現圖片廣告輪播執行個體代碼,javascript圖片廣告

來源:互聯網
上載者:User

JavaScript仿商城實現圖片廣告輪播執行個體代碼,javascript圖片廣告

大家在逛購物商城的時候不知道有沒有注意到商城首頁上面都會有各種輪播廣告,效果非常好,下面小編給大家整理特此分享給大家學習。具體內容如下所示:

1.HTML架構

如,分為三個部分,首先有個div承載,然後一個ul存放圖片,一個ul存放數字,再兩個button即可


 

<div class="out"><ul class="img"><li><img src="img/1.png" alt=""></li><li><img src="img/2.png" alt=""></li><li><img src="img/3.png" alt=""></li><li><img src="img/4.png" alt=""></li><li><img src="img/5.png" alt=""></li></ul><ul class="num"><li>1</li><li>2</li><li>3</li><li>4</li><li>5</li></ul><input class="left btn" type="button" value="<"><input class="right btn" type="button" value=">"></div>

2.CSS配置

首先外框div要設定和圖片大小一致,並且置中對齊,position設定為相對定位,因為後面的圖片什麼的都是相對這個大框來絕對位置的

//div外框.out{width: 560px;height: 350px;margin: 0 auto;position: relative;border: 2px solid red;}

接著設定圖片,五張圖片疊加這個通過absolute這個屬性來實現,因為上面我們把父級容器設定為relative,所以裡面的子項目都是相對父級div來絕對位置的

.img {list-style-type: none;}.img li{position: absolute;top:0;cursor: pointer;}

接下來的其他元素我會用注釋寫到代碼中

.num{list-style-type: none;/*這個屬性會使得text-align失效,所以下面手動寫上寬度即可*/position: absolute;width: 100%;bottom:0;text-align: center;}.num li{width: 20px;height: 20px;/*行高這個屬性使得元素垂直置中*/line-height: 20px;text-align: center;/*inline-block使得所有元素按行排列*/display: inline-block;background-color: #4a4a4a;color: #fff;border-radius: 50%;/*滑鼠放上去會有小手*/cursor: pointer;}/*滑鼠放到圖片上的時候才顯示btn*/.out:hover .btn{display: block;}.btn{width: 30px;height: 50px;position: absolute;display: none;/*通過top和margin來定位屬性到垂直置中*/top: 50%;margin-top: -30px;border: 0;/*使用rgba可以修改透明度*/background-color: rgba(0,0,0,.5);color: #fff;}.right{right: 0;}

效果如下:

 

3.jquery控制輪播

實現手動輪播

意思就是滑鼠移到下面數字,就顯示對應的圖片

//手動控制輪播圖$(".img li").eq(0).fadeIn(300);//載入頁面的時候讓第一個圖片顯示$(".num li").eq(0).addClass("active");//給序號為1的加上紅色背景$(".num li").mouseover(function () {//當前的數字顯示紅色背景,其他的數字都隱藏背景$(this).addClass("active").siblings().removeClass("active");//當前數字對應的圖片顯示,其他圖片都隱藏var index = $(this).index();$(".img li").eq(index).stop().fadeIn(300).siblings().stop().fadeOut(300);})

實現自動輪播

//實現自動輪播var i = 0;//計時器控制數字var t = setInterval(move,1500);//該方法顯示與序號對應的圖片function move() {if (++i ==5){i = 0;}$(".num li").eq(i).addClass("active").siblings().removeClass("active");$(".img li").eq(i).stop().fadeIn(300).siblings().stop().fadeOut(300);}//滑鼠移入後停止自動輪播$(".out").hover(function () {clearInterval(t);}, function () {t = setInterval(move,1500);});

實現點擊輪播

//按鈕移動事件$(".right").click(function () {move();});$(".left").click(function () {i = i-2;move();});

動態控制li數字顯示數量

通過圖片數量控制標籤數量即可

//手動控制li數量var size = $(".img li").size();for (var k=1;k<=size;k++){$(".num").append("<li>"+k+"</li>");}$(".num li").eq(0).addClass("active");
您可能感興趣的文章:
  • js實現支援手機滑動切換的輪播圖片效果執行個體
  • 原生js和jquery實現圖片輪播淡入淡出效果
  • 原生js和jquery實現圖片輪播特效
  • JS實現簡易圖片輪播效果的方法
  • js實現點擊左右按鈕輪播圖片效果執行個體
  • 用box固定長寬實現圖片自動輪播js代碼
  • js圖片自動輪播代碼分享(js圖片輪播)
  • 簡單的js圖片輪換代碼(js圖片輪播)
  • 帶左右箭頭圖片輪播的JS代碼
  • 原生javascript實現圖片輪播效果代碼
  • js 圖片輪播(5張圖片)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.