成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

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

原生JavaScript實(shí)現(xiàn)幻燈片效果

瀏覽:8日期:2023-06-08 15:26:39

當(dāng)我們制作一個(gè)頁面時(shí),尤其是制作一個(gè)首頁時(shí),通常會設(shè)計(jì)一個(gè)可以鏈接到整個(gè)網(wǎng)站的其他主體頁面的導(dǎo)航欄,或者一段網(wǎng)站的介紹文字中會包含這頁面的跳轉(zhuǎn),通常情況會使用title屬性為這些跳轉(zhuǎn)鏈接添加一些解釋性的文字,但是我們可以通過制作一個(gè)幻燈片的demo,加強(qiáng)用戶的體驗(yàn)性。當(dāng)用戶的鼠標(biāo)移動(dòng)到某一鏈接時(shí),下方會出現(xiàn)對應(yīng)的圖片預(yù)覽,這樣即美化頁面,又大大增加了整個(gè)網(wǎng)站的交互性,下面就讓我們一起制作一個(gè)漂亮的幻燈片腳本吧。

準(zhǔn)備:在制作腳本之前,需要制作一張圖片,這張圖片應(yīng)該展示了所有預(yù)覽效果,如下圖:

原生JavaScript實(shí)現(xiàn)幻燈片效果

index.html

制作有序列表,添加一些頁面鏈接

<body> <h1>簡單動(dòng)畫制作</h1> <p>連接跳轉(zhuǎn)目標(biāo)展示</p> <ol id='list'> <li> <a href='http://www.piao2010.com/bcjs/list1.html' >First</a> </li> <li> <a href='http://www.piao2010.com/bcjs/list2.html' >Second</a> </li> <li> <a href='http://www.piao2010.com/bcjs/list3.html' >Third</a> </li> </ol> <!--動(dòng)態(tài)添加的圖片展示區(qū)域>--><script src='http://www.piao2010.com/bcjs/script.js'></script></body>

style.css

為這個(gè)導(dǎo)航欄添加一些樣式

ol{ padding-left: 20px;}ol li{ display: inline; margin-right: 10px;}#view{ width: 600px; height: 200px; position: absolute;}#slideShow{ width: 200px; height: 200px; overflow: hidden; position: relative;}

script.js

實(shí)現(xiàn)思路:

在建立腳本之前,我們先整理一下思路,確定我們要做什么?1. 新建一些節(jié)點(diǎn)用來展示預(yù)覽圖片2. 為a標(biāo)簽添加onmouseover事件3. 通過setTimeout()函數(shù),和對圖片元素left、top偏移量(獲取設(shè)置的left top屬性時(shí) 要轉(zhuǎn)換稱整型)的移動(dòng)完成動(dòng)畫效果

/*共享load*/function addLoadEvent(fun){ var oldLoad = window.onload; if(typeof oldLoad != 'function'){ window.onload = fun; }else{ window.onload = function(){ oldLoad(); fun(); } }}/*insertAfter*/function insertAfter(newNode,oldNode){ var parent = oldNode.parentNode; if(parent.lastChild == oldNode){ parent.appendChild(newNode); }else{ parent.insertBefore(newNode,oldNode.nextSibling); }}function show(){ /*向后兼容*/ if(!document.getElementById) return false; if(!document.getElementsByTagName) return false; if(!document.createElement) return false; /*獲取列表清單*/ var list = document.getElementById('list'); /*創(chuàng)建圖片展示區(qū)域*/ /*外層div*/ var div = document.createElement('div'); div.setAttribute('id','slideShow'); /*img*/ var img = document.createElement('img'); img.setAttribute('id','view'); img.setAttribute('src','image.jpg'); img.setAttribute('alt','圖片預(yù)覽'); /*添加 使用insertAfter()函數(shù) 保證div緊跟在list列表之后*/ insertAfter(div,list); div.appendChild(img); /*綁定事件*/ var a = list.getElementsByTagName('a'); a[0].onmouseover =function(){ moveElement('view',0,0,10); }; a[1].onmouseover = function(){ moveElement('view',-200,0,10); }; a[2].onmouseover = function(){ moveElement('view',-400,0,10); };}/*移動(dòng)*參數(shù)的含義:圖片所在元素的id;圖片應(yīng)該向左移動(dòng)的偏移量;上偏移量;時(shí)間*/function moveElement(elementID,left,top,interval){ /*向后兼容*/ if(!document.getElementById) return false; if(!document.getElementById(elementID)) return false; /*獲取圖片*/ var img = document.getElementById(elementID); /*判斷當(dāng)前元素是否已經(jīng)處在一個(gè)動(dòng)畫函數(shù)中 *防止動(dòng)畫堆積 */ if(img.moveNow){ /*清楚堆棧中的動(dòng)畫*/ clearTimeout(img.moveNow); } /*判斷元素是否設(shè)置了left和top*/ if(!img.style.left){ img.style.left = '0px'; } if(!img.style.top){ img.style.top = '0px'; } /*獲取圖片當(dāng)前位置 *此時(shí)獲取的值是字符串格式,使用parseInt()強(qiáng)制轉(zhuǎn)化為字符串*/ var oldLeft = parseInt(img.style.left); var oldTop = parseInt(img.style.top); /*將當(dāng)前位置與目標(biāo)位置做比較*/ if(oldLeft == left && oldTop == top){ return true; } /*為了保證用戶體驗(yàn),當(dāng)移動(dòng)的距離較大時(shí)應(yīng)該移動(dòng)的快一些 *當(dāng)移動(dòng)的距離比較小時(shí),可以適當(dāng)慢一些 *根據(jù)相差的距離判斷移動(dòng)的距離,每次移動(dòng)相差距離的1/10 */ /*dist變量用于存儲當(dāng)前偏移量與目標(biāo)偏移量的距離*/ var dist = 0; if(oldLeft < left){ /*ceil()向上取整 防止小數(shù) 以及小于1的情況*/ dist = Math.ceil((left-oldLeft)/10); oldLeft = oldLeft+dist; } if(oldLeft > left){ dist = Math.ceil((oldLeft-left)/10); oldLeft = oldLeft - dist; } if(oldTop < top){ dist = Math.ceil((top-oldTop)/10); oldTop = oldTop+dist; } if(oldTop > top){ dist = Math.ceil((oldTop-top)/10); oldTop = oldTop - dist; } /*移動(dòng)*/ img.style.left = oldLeft+'px'; img.style.top = oldTop+'px'; /*調(diào)用函數(shù)*/ var result = 'moveElement(’'+elementID+'’,'+left+','+top+','+interval+')'; /*將執(zhí)行動(dòng)畫的函數(shù),設(shè)置成這個(gè)元素的一個(gè)屬性*/ img.moveNow = setTimeout(result,interval);}addLoadEvent(show);

最后執(zhí)行效果

原生JavaScript實(shí)現(xiàn)幻燈片效果

此時(shí),當(dāng)我們將鼠標(biāo)移動(dòng)到不同列表項(xiàng)時(shí),列表下的圖片就會移動(dòng)到對應(yīng)的預(yù)覽圖位置。

到此,一個(gè)簡單的幻燈片demo就制作完成了。

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

標(biāo)簽: JavaScript
相關(guān)文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
欧美高清性hdvideosex| 亚洲一区精彩视频| 色婷婷激情综合| 亚洲激情第一区| 国模一区二区三区| 国产精品素人一区二区| 午夜日韩电影| 欧美激情一区二区三区四区| 99久久99久久综合| 91精品国产综合久久精品麻豆 | 久久国内精品自在自线400部| 久久精品麻豆| 丝袜诱惑制服诱惑色一区在线观看| 久久高清免费观看| 日韩激情中文字幕| 在线观看视频一区| 久久av中文字幕片| 9191成人精品久久| 成人亚洲一区二区一| 欧美成人乱码一区二区三区| jlzzjlzz欧美大全| 中文字幕乱码久久午夜不卡| 亚洲电影专区| 亚洲成年人网站在线观看| 美女精品网站| 免费高清在线一区| 欧美日韩不卡一区| 成人av电影免费观看| 国产欧美一区视频| 亚洲精品日韩在线观看| 亚洲一区二区三区四区在线免费观看 | 久久一区二区视频| 欧美va天堂在线| 亚洲三级电影网站| 美女国产精品| 国产精品亚洲专一区二区三区| 欧美亚洲三区| 久久爱www久久做| 日韩欧美国产wwwww| 欧美精品国产一区| 亚洲激情自拍偷拍| 欧美中文字幕久久| 成人午夜视频在线观看| 欧美成人女星排名| 亚洲大片av| 免费在线视频一区| 日韩一卡二卡三卡| 伊甸园精品99久久久久久| 亚洲国产精品久久人人爱| 在线看一区二区| 成人一区二区视频| 综合久久给合久久狠狠狠97色| 亚洲欧美精品| 狠狠网亚洲精品| 久久精品综合网| 国产一区二区三区奇米久涩| 久久国产精品99久久久久久老狼| 欧美成人aa大片| 亚洲激精日韩激精欧美精品| 免费观看91视频大全| 欧美xfplay| 亚洲人久久久| 精品一区二区三区久久| 久久先锋资源网| 国产农村妇女精品一二区| 激情偷乱视频一区二区三区| 国产婷婷色一区二区三区| 久久国产99| 不卡av在线网| 亚洲高清三级视频| 精品区一区二区| 中国成人在线视频| 国产老妇另类xxxxx| 亚洲欧洲精品天堂一级| 欧美专区日韩专区| 亚洲欧美影院| 日韩精品一级中文字幕精品视频免费观看 | 亚洲综合免费观看高清完整版在线| 一本一本大道香蕉久在线精品| 国产精品18久久久久久久久久久久 | 欧美一区永久视频免费观看| 欧美日韩亚洲一区二区三区在线| 日韩精品每日更新| 精品国产区一区| 美女精品网站| 波多野结衣视频一区| 一区二区在线观看不卡| 日韩欧美国产电影| 欧美中文字幕| 91日韩一区二区三区| 美腿丝袜一区二区三区| 亚洲色图视频网| 日韩视频免费观看高清完整版在线观看 | 亚洲永久免费av| 欧美成人精品高清在线播放| 亚洲一区二区三区在线观看视频| 国产成人在线免费观看| 亚洲免费观看高清| 欧美一区二区三区喷汁尤物| av不卡在线| zzijzzij亚洲日本少妇熟睡| 午夜精品久久久久久| 色综合色综合色综合色综合色综合 | 欧美+日本+国产+在线a∨观看| 午夜精品福利一区二区蜜股av | 成人av电影观看| 丝袜亚洲另类丝袜在线| 中文字幕精品在线不卡| 制服丝袜激情欧洲亚洲| 鲁大师影院一区二区三区| 91美女片黄在线| 久久超级碰视频| 亚洲一区二区五区| 国产精品网站一区| 欧美变态tickling挠脚心| 久久天堂精品| 一区免费视频| 99视频国产精品| 黄一区二区三区| 亚洲国产视频一区| 国产精品毛片大码女人| 欧美成人精品福利| 欧美日韩在线电影| 麻豆久久久9性大片| 亚洲电影在线| 欧美1区2区| 成人av资源下载| 久久疯狂做爰流白浆xx| 亚洲国产成人高清精品| 国产精品久久久久7777按摩 | 久久精品国产成人一区二区三区| 亚洲美女精品一区| 欧美国产精品一区二区| 精品捆绑美女sm三区| 欧美日韩国产精选| 色老综合老女人久久久| 久久国产福利| 国产亚洲一级| 亚洲精品乱码| 欧美三级网页| 95精品视频在线| 成人av在线资源| 国产91丝袜在线播放九色| 久久国产欧美日韩精品| 日韩精品色哟哟| 午夜精品久久久久久久99樱桃| 亚洲乱码中文字幕综合| 亚洲欧美自拍偷拍| 国产精品免费av| 国产天堂亚洲国产碰碰| 精品999久久久| 欧美mv日韩mv亚洲| 日韩一级二级三级| 欧美一二三区在线| 欧美精品在线一区二区三区| 91久久精品一区二区三| 欧美综合二区| 久久久久国产精品午夜一区| 免费在线成人| 免费永久网站黄欧美| 米奇777在线欧美播放| 亚洲欧美日韩国产一区二区| 亚洲精品裸体| 亚洲精品美女久久7777777| 韩日视频一区| 亚洲午夜激情| 亚洲国产一区二区精品专区| 91久久在线| 国产精品日韩久久久| 亚洲一区二区三区精品在线观看| 夜夜嗨av一区二区三区网站四季av| 一本久道综合久久精品| 国产精品视频| 久久综合影音| 欧美日韩一区二区三区不卡| 欧美乱妇一区二区三区不卡视频| 欧美高清视频不卡网| 日韩欧美国产1| 久久亚洲精品国产精品紫薇| 国产日韩欧美一区二区三区乱码| 国产欧美综合在线观看第十页| 国产精品国产三级国产专播品爱网| 亚洲欧美综合另类在线卡通| 一区二区三区中文在线| 偷拍亚洲欧洲综合| 男男视频亚洲欧美| 国产乱子伦一区二区三区国色天香 | 成人欧美一区二区三区| 亚洲欧美日韩人成在线播放| 亚洲午夜av在线| 美女国产一区二区三区| 国产一区二区主播在线| 成人免费毛片a| 欧美精品免费观看二区| 亚洲开发第一视频在线播放| 久久九九精品| 6080国产精品一区二区| 久久亚洲综合色一区二区三区| 国产精品免费人成网站| 亚洲一二三专区|