av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

js輪播圖之旋轉(zhuǎn)木馬效果

瀏覽:96日期:2024-04-17 09:25:25

本文實(shí)例為大家分享了js輪播圖之旋轉(zhuǎn)木馬效果的具體代碼,供大家參考,具體內(nèi)容如下

思路:給定一個(gè)數(shù)組,儲(chǔ)存每張圖片的位置,旋轉(zhuǎn)將位置進(jìn)行替換左旋轉(zhuǎn):將數(shù)組第一個(gè)數(shù)據(jù)刪除,然后添加到數(shù)組的最后右旋轉(zhuǎn):將數(shù)組最后一個(gè)數(shù)據(jù)刪除,然后添加到數(shù)組的開頭先附上效果圖,再來實(shí)現(xiàn)

js輪播圖之旋轉(zhuǎn)木馬效果

接下來就是最主要的,封裝原生js動(dòng)畫函數(shù)

//封裝函數(shù)獲取任意一個(gè)元素的任意屬性的值(兼容ie8)function getStyle(element, attr) { return window.getComputedStyle ? window.getComputedStyle(element, null)[attr] : element.currentStyle[attr];}//封裝js變速動(dòng)畫function animate(element, json, fn) { //每次啟動(dòng)定時(shí)器之前先停止 clearInterval(element.tmId); element.tmId = setInterval(function () { var flag = true; //遍歷對(duì)象中的每個(gè)屬性 for (var attr in json) { //執(zhí)行透明度動(dòng)畫 if (attr == 'opacity') { //獲取當(dāng)前元素的屬性值 var current = parseInt(getStyle(element, attr)*100); //獲取目標(biāo)值 var target = json[attr]*100; //移動(dòng)的步數(shù) var step = (target - current) / 10; step = step > 0 ? Math.ceil(step) : Math.floor(step); //移動(dòng)后的值 current += step; element.style[attr] = current / 100; } else if (attr == 'zIndex') { //改變層級(jí)屬性 element.style[attr] = json[attr]; } else { //獲取當(dāng)前元素的屬性值 var current = parseInt(getStyle(element, attr)); //獲取目標(biāo)值 var target = json[attr]; //移動(dòng)的步數(shù) var step = (target - current) / 10; step = step > 0 ? Math.ceil(step) : Math.floor(step); //移動(dòng)后的值 current += step; element.style[attr] = current + 'px'; if (current != target) { flag = false; } } } if (flag) { clearInterval(element.tmId); //如果有回調(diào)函數(shù)就調(diào)用 if (fn) fn(); } // 測(cè)試 // console.log('目標(biāo):' + target + '/當(dāng)前:' + current + '/步數(shù):' + step); }, 20);}

封裝完函數(shù),剩下的直接調(diào)用就可以了,最后附上旋轉(zhuǎn)木馬完整代碼?

<!DOCTYPE html><html><head lang='en'> <meta charset='UTF-8'> <title>旋轉(zhuǎn)木馬輪播圖</title> <link rel='stylesheet' href='http://www.4tl426be.cn/bcjs/css/css(1).css' rel='external nofollow' /> <script src='http://www.4tl426be.cn/bcjs/common.js'></script> <script> var config = [ { width: 400, top: 20, left: 50, opacity: 0.2, zIndex: 2 },//0 { width: 600, top: 70, left: 0, opacity: 0.8, zIndex: 3 },//1 { width: 800, top: 100, left: 200, opacity: 1, zIndex: 4 },//2 { width: 600, top: 70, left: 600, opacity: 0.8, zIndex: 3 },//3 { width: 400, top: 20, left: 750, opacity: 0.2, zIndex: 2 }//4 ]; window.onload = function () { var flag = true; var list = $query('#slide').getElementsByTagName('li'); function flower() { //1、圖片散開 for (var i = 0; i < list.length; i++) { //設(shè)置每個(gè)li的寬,透明度,left,top,zindex animate(list[i], config[i], function () { flag = true; }); } } flower();//初始化調(diào)用函數(shù) //按鈕的顯示與隱藏 $query('#slide').onmouseover = function () { $query('#arrow').style.opacity = '1'; } $query('#slide').onmouseout = function () { $query('#arrow').style.opacity = '0'; } //點(diǎn)擊切換 $query('#arrLeft').onclick = function () { if (flag) { config.unshift(config.pop()); flower(); flag = false; } } $query('#arrRight').onclick = function () { if (flag) { config.push(config.shift()); flower(); flag = false; } } //自動(dòng)切換 setInterval(function () { config.push(config.shift()); flower(); }, 2000); } </script></head><body><div id='wrap'> <div id='slide'> <ul> <li><a href='http://www.4tl426be.cn/bcjs/14370.html#'><img src='http://www.4tl426be.cn/bcjs/images/slidepic1.jpg' alt=''/></a></li> <li><a href='http://www.4tl426be.cn/bcjs/14370.html#'><img src='http://www.4tl426be.cn/bcjs/images/slidepic2.jpg' alt=''/></a></li> <li><a href='http://www.4tl426be.cn/bcjs/14370.html#' ><img src='http://www.4tl426be.cn/bcjs/images/slidepic3.jpg' alt=''/></a></li> <li><a href='http://www.4tl426be.cn/bcjs/14370.html#'><img src='http://www.4tl426be.cn/bcjs/images/slidepic4.jpg' alt=''/></a></li> <li><a href='http://www.4tl426be.cn/bcjs/14370.html#'><img src='http://www.4tl426be.cn/bcjs/images/slidepic5.jpg' alt=''/></a></li> </ul> <div id='arrow'> <a href='javascript:void(0);' id='arrLeft'></a> <a href='javascript:void(0);' id='arrRight'></a> </div> </div></div></body></html>

精彩專題分享:jQuery圖片輪播 JavaScript圖片輪播 Bootstrap圖片輪播

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 成人欧美日韩 | 高潮一区二区三区乱码 | 丁香花在线观看 | 三年中文在线看免费观看 | 午夜爱| 日日干狠狠干 | 69人人 | 欧美一区二区三区在线视频 | 亚洲精品一区二区三区蜜桃久 | 麻豆三级视频 | 久久艹精品 | 亚洲第一区视频 | 欧美日韩视频 | 国产精品一区av | 日本三级香港三级 | 国产精品自拍小视频 | 亚洲成人av在线 | 成人婷婷 | 日韩精品在线免费观看 | 久久噜噜| 国产精品一区二 | 国产亚洲视频在线观看 | 欧美日韩在线一区二区 | 亚洲激情欧美激情 | 亚洲第一黄网 | www.欧美精品 | 一区二区三区成人 | 久久亚洲国产精品 | 精品视频一区二区三区 | 精品一区二区三区免费看 | 成人免费视频国产免费 | 亚洲综合久久久 | 特黄aaaaaaaaa真人毛片 | 日韩免费小视频 | 成人做爰免费视频免费看 | 亚洲毛片av | 久久精品欧美一区二区 | 秋霞一区二区 | 又黄又爽又色视频 | 欧美一级片| 欧美一级片网站 |