javascript圖片滑動(dòng)效果實(shí)現(xiàn)
本文為大家分享了javascript圖片滑動(dòng)效果實(shí)現(xiàn)方法,具體內(nèi)容如下,先看一下效果圖:

鼠標(biāo)滑過那張圖,顯示完整的哪張圖,移除則復(fù)位:

簡(jiǎn)單的CSS加JS操作DOM實(shí)現(xiàn):
<!doctype html> <html> <head> <meta charset="UTF-8"> <title>sliding doors</title> <link rel="stylesheet" href="styles/reset.css" /> <link rel="stylesheet" href="styles/slidingdoors.css" /> <script src="scripts/slidingdoors.js"></script> </head> <body> <div id='container'> <img src="images/door1.png" alt="1080P神器" title="1080P神器" /> <img src="images/door2.png" alt="5.5寸四核" title="5.5寸四核" /> <img src="images/door3.png" alt="四核5寸" title="四核5寸" /> <img src="images/door4.png" alt="5.7寸機(jī)皇" title="5.7寸機(jī)皇" /> </div> </body> </html>
css:
#container {
height: 477px;
margin: 0 auto;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
overflow: hidden;
position: relative;
}
#container img {
position: absolute;
display: block;
left: 0;
border-left: 1px solid #ccc;
}
js操作:
window.onload = function() {
//容器對(duì)象
var box = document.getElementById('container');
//獲得圖片NodeList對(duì)象集合
var imgs = box.getElementsByTagName('img');
//單張圖片的寬度
var imgWidth = imgs[0].offsetWidth;
//設(shè)置掩藏門體露出的寬度
var exposeWidth = 180;
//設(shè)置容器總寬度
var boxWidth = imgWidth + (imgs.length - 1) * exposeWidth;
box.style.width = boxWidth + 'px';
//設(shè)置每道門的初始位置
function setImgsPos() {
for (var i = 1, len = imgs.length; i < len; i++) {
imgs[i].style.left = imgWidth + exposeWidth * (i - 1) + 'px';
}
}
setImgsPos();
//計(jì)算每道門打開時(shí)應(yīng)移動(dòng)的距離
var translate = imgWidth - exposeWidth;
//為每道門綁定事件
for (var i = 0, len = imgs.length; i < len; i++) {
//使用立即調(diào)用的函數(shù)表答式,為了獲得不同的i值
(function(i) {
imgs[i].onmouseover = function() {
//先將每道門復(fù)位
setImgsPos();
//打開門
for (var j = 1; j <= i; j++) {
imgs[j].style.left = parseInt(imgs[j].style.left, 10) - translate + 'px';
//imgs[j].style.left = j*exposeWidth +"px";
}
};
imgs[i].onmouseout = function(){
setImgPos();
};
})(i);
}
};
更多關(guān)于滑動(dòng)效果的專題,請(qǐng)點(diǎn)擊下方鏈接查看:
希望本文所述對(duì)大家學(xué)習(xí)javascript程序設(shè)計(jì)有所幫助。
- 基于javascript實(shí)現(xiàn)圖片滑動(dòng)效果
- js實(shí)現(xiàn)分享到隨頁(yè)面滾動(dòng)而滑動(dòng)效果的方法
- 用原生js做個(gè)簡(jiǎn)單的滑動(dòng)效果的回到頂部
- 使用原生js封裝webapp滑動(dòng)效果(慣性滑動(dòng)、滑動(dòng)回彈)
- js通過更改按鈕的顯示樣式實(shí)現(xiàn)按鈕的滑動(dòng)效果
- js實(shí)現(xiàn)支持手機(jī)滑動(dòng)切換的輪播圖片效果實(shí)例
- javascript 仿QQ滑動(dòng)菜單效果代碼
- JS+CSS實(shí)現(xiàn)滑動(dòng)切換tab菜單效果
- JS實(shí)現(xiàn)的適合做faq或menu滑動(dòng)效果示例
相關(guān)文章
點(diǎn)擊按鈕或鏈接不跳轉(zhuǎn)只刷新頁(yè)面的腳本整理
點(diǎn)擊按鈕或鏈接時(shí)不跳轉(zhuǎn)只刷新頁(yè)面,在某些情況下還是比較實(shí)用的,下面整理些不錯(cuò)的示例,感興趣的朋友可以參考下2013-10-10
ionic中的$ionicPlatform.ready事件中的通用設(shè)置
$ionicPlatform.ready事件是用于檢測(cè)當(dāng)前的平臺(tái)是否就緒的事件,相當(dāng)于基于document的deviceready事件, 在app中一些通用關(guān)于設(shè)備的設(shè)置必須在這個(gè)事件中處理2017-06-06
javascript 實(shí)現(xiàn)父窗口引用彈出窗口的值的腳本
javascript 實(shí)現(xiàn)父窗口引用彈出窗口的值的腳本...2007-08-08
JS實(shí)現(xiàn)checkbox互斥(單選)功能示例
這篇文章主要介紹了JS實(shí)現(xiàn)checkbox互斥(單選)功能,涉及JavaScript針對(duì)頁(yè)面元素屬性的判斷及動(dòng)態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-05-05

