javascript图片滑动效果实现


Posted in Javascript onJanuary 28, 2021

本文为大家分享了javascript图片滑动效果实现方法,具体内容如下,先看一下效果图:

javascript图片滑动效果实现

鼠标滑过那张图,显示完整的哪张图,移除则复位:

javascript图片滑动效果实现

简单的CSS加JS操作DOM实现:

<!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寸机皇" title="5.7寸机皇" />
 </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() {
 //容器对象
 var box = document.getElementById('container');

 //获得图片NodeList对象集合
 var imgs = box.getElementsByTagName('img');

 //单张图片的宽度
 var imgWidth = imgs[0].offsetWidth;

 //设置掩藏门体露出的宽度
 var exposeWidth = 180;

 //设置容器总宽度
 var boxWidth = imgWidth + (imgs.length - 1) * exposeWidth;
 box.style.width = boxWidth + 'px';

 //设置每道门的初始位置
 function setImgsPos() {
 for (var i = 1, len = imgs.length; i < len; i++) {
 imgs[i].style.left = imgWidth + exposeWidth * (i - 1) + 'px';
 }
 }
 setImgsPos();

 //计算每道门打开时应移动的距离
 var translate = imgWidth - exposeWidth;

 //为每道门绑定事件
 for (var i = 0, len = imgs.length; i < len; i++) {
 //使用立即调用的函数表答式,为了获得不同的i值
 (function(i) {
 imgs[i].onmouseover = function() {
 //先将每道门复位
 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);
 }
};

更多关于滑动效果的专题,请点击下方链接查看:

希望本文所述对大家学习javascript程序设计有所帮助。

Javascript 相关文章推荐
javascript 仿QQ滑动菜单效果代码
Sep 03 Javascript
jQuery:节点(插入,复制,替换,删除)操作
Mar 04 Javascript
判断一个对象是否为jquery对象的方法
Mar 12 Javascript
For循环中分号隔开的3部分的执行顺序探讨
May 27 Javascript
Vue.js基础知识汇总
Apr 27 Javascript
jQuery用FormData实现文件上传的方法
Nov 21 Javascript
JavaScript之Vue.js【入门基础】
Dec 06 Javascript
JS实现微信弹出搜索框 多条件查询功能
Dec 13 Javascript
jQuery EasyUI 页面加载等待及页面等待层
Feb 06 Javascript
Vue.js学习记录之在元素与template中使用v-if指令实例
Jun 27 Javascript
JS使用队列对数组排列,基数排序算法示例
Mar 02 Javascript
js字符串类型String常用操作实例总结
Jul 05 Javascript
每天一篇javascript学习小结(Array数组)
Nov 11 #Javascript
九种原生js动画效果
Nov 11 #Javascript
js文字横向滚动特效
Nov 11 #Javascript
详解javascript遍历方式
Nov 11 #Javascript
js window对象属性和方法相关资料整理
Nov 11 #Javascript
js clearInterval()方法的定义和用法
Nov 11 #Javascript
jquery原理以及学习技巧介绍
Nov 11 #Javascript
You might like
PHP实现负载均衡session共享redis缓存操作示例
2018/08/22 PHP
JavaScript For Beginners(转载)
2007/01/05 Javascript
使用JS操作页面表格,元素的一些技巧
2007/02/02 Javascript
js调用flash的效果代码
2008/04/26 Javascript
javascript 写类方式之十
2009/07/05 Javascript
javascript innerHTML使用分析
2010/12/03 Javascript
简单的代码实现jquery定时器
2014/01/03 Javascript
javascript制作网页图片上实现下雨效果
2015/02/26 Javascript
引入JavaScript时alert弹出框显示中文乱码问题
2017/09/16 Javascript
Vue中JS动画与Velocity.js的结合使用
2019/02/13 Javascript
了解JavaScript函数中的默认参数
2019/05/30 Javascript
ES6 Iterator遍历器原理,应用场景及相关常用知识拓展详解
2020/02/15 Javascript
在Uni中使用Vue的EventBus总线机制操作
2020/07/31 Javascript
[02:34]DOTA2英雄基础教程 幽鬼
2014/01/02 DOTA
使用python获取csv文本的某行或某列数据的实例
2018/04/03 Python
Python callable内置函数原理解析
2020/03/05 Python
jupyter使用自动补全和切换默认浏览器的方法
2020/11/18 Python
CSS3地图动态实例代码(圆圈向外扩散)
2018/06/15 HTML / CSS
canvas烟花特效锦集
2018/01/17 HTML / CSS
HTML5 语义化结构化规范化
2008/10/17 HTML / CSS
匡威帆布鞋美国官网:Converse美国
2016/08/22 全球购物
Schutz鞋官方网站:Schutz Shoes
2017/12/13 全球购物
西班牙土拨鼠床垫公司,感觉在云端:Marmota
2019/03/18 全球购物
Magee 1866官网:Donegal粗花呢外套和大衣专家
2019/11/01 全球购物
C#中有没有静态构造函数,如果有是做什么用的?
2016/06/04 面试题
高中生校园生活自我评价
2013/09/19 职场文书
人力资源管理专业毕业生自我评价
2013/09/21 职场文书
环境工程与管理大学毕业生求职信
2013/10/02 职场文书
高级技校毕业生自荐信
2013/11/18 职场文书
高中生期末评语大全
2014/01/28 职场文书
《鹬蚌相争》教学反思
2014/04/22 职场文书
爱国主义演讲稿
2014/05/07 职场文书
农村党员一句话承诺
2014/05/30 职场文书
师德承诺书2015
2015/04/28 职场文书
《比的意义》教学反思
2016/02/18 职场文书
初中思品教学反思
2016/02/20 职场文书