JavaScript实现滑动门效果


Posted in Javascript onJanuary 18, 2020

本文实例为大家分享了JavaScript实现滑动门效果的具体代码,供大家参考,具体内容如下

一、什么是滑动门

首先你要了解什么是滑动门。
生活中我们经常看到一些网站或是商城有一些滑动门的效果

JavaScript实现滑动门效果

那么怎么实现一个简单的滑动门的网页特效呢?下面简单分享一下方法,

二、实现滑动门所需技术

1、简单的HTML基础知识
2、简单的CSS基础样式
3、基本的javascript知识

三、如何实现滑动门(重点)

准备好一段HTML代码

<div id="container">
  <img src="images/20190503222903.png"/><!--图片可以自己修改-->
  <img src="images/20190503222943.png"/>
  <img src="images/20190503223003.png"/>
  <img src="images/20190503223514.png"/>
</div>

给当前HTML结构添加样式

*{
  margin: 0;
  padding: 0;
  background-color: #ccc;
}
p{
  text-align: center;
}
#container{
  width: 1130px;
  height: 350px;
  margin: 0 auto;
  border-right:1px solid #FF0000;
  border-bottom:1px solid #FF0000;
  overflow: hidden;
  position: relative;
}
#container img{
  width:500px;
  height:350px;
  display: block;
  position: absolute;
  border-bottm:1px solid #FF0000;
}

最后使用js代码实现效果

//加载dom树
window.onload = function(){
//定义盒子
var box=document.getElementById('container');
//定义图片
var imgs=box.getElementsByTagName('img');
//图片宽度
var imgWidth = imgs[0].offsetWidth;
//隐藏宽度
var exposeWidth = 210;
//盒子宽度
var boxWidth = imgWidth + (imgs.length -1) * exposeWidth;
box.style.width='px';
//设置每道门的初始位置
function SetImgsPos(){
for(var i = 1;i<imgs.length;i++){
      imgs[i].style.left = imgWidth + exposeWidth*(i -1)+ 'px';
      }
    }
    SetImgsPos();
     //计算每道门应该移动的距离
    var translate = imgWidth - exposeWidth;
    //为每道门绑定事件
    for(var i=0;i<imgs.length;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';
          }
        }
      })(i);
    }
  }

效果展示

JavaScript实现滑动门效果

根据上面的步骤,就可以实现简单的滑动门效果,快去试试吧!!!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery的clone方法应用于textarea和select的bug修复
Jun 26 Javascript
JavaScript将Web页面内容导出到Word及Excel的方法
Feb 13 Javascript
avalon js实现仿微博拖动图片排序
Aug 14 Javascript
JavaScript代码轻松实现网页内容禁止复制(代码简单)
Oct 23 Javascript
JavaScript实现给定时间相加天数的方法
Jan 25 Javascript
分享10个优化代码的CSS和JavaScript工具
May 11 Javascript
jQuery实现圣诞节礼物动画案例解析
Dec 25 Javascript
bootstrap paginator分页前后台用法示例
Jun 17 Javascript
JavaScript中的E-mail 地址格式验证
Mar 28 Javascript
js通过循环多张图片实现动画效果
Dec 19 Javascript
Node.js API详解之 string_decoder用法实例分析
Apr 29 Javascript
在vue-cli创建的项目中使用sass操作
Aug 10 Javascript
JS数组方法push()、pop()用法实例分析
Jan 18 #Javascript
vue中使用WX-JSSDK的两种方法(推荐)
Jan 18 #Javascript
JS数组方法join()用法实例分析
Jan 18 #Javascript
JavaScript进制转换实现方法解析
Jan 18 #Javascript
js滚轮事件 js自定义滚动条的实现
Jan 18 #Javascript
vue实现扫码功能
Jan 17 #Javascript
js实现轮播图效果 z-index实现轮播图
Jan 17 #Javascript
You might like
如何使用微信公众平台开发模式实现多客服
2016/01/06 PHP
详细解读php的命名空间(二)
2018/02/21 PHP
PHP实现的策略模式示例
2019/03/20 PHP
jquery中使用$(#form).submit()重写提交表单无效原因分析及解决
2013/03/25 Javascript
js 遍历json返回的map内容示例代码
2013/10/29 Javascript
js代码实现的加入收藏效果并兼容主流浏览器
2014/06/23 Javascript
javascript实现在某个元素上阻止鼠标右键事件的方法和实例
2014/08/12 Javascript
javascript实现的简单的表单验证
2015/07/10 Javascript
jQuery+formdata实现上传进度特效遇到的问题
2016/02/24 Javascript
基于jQuery实现动态搜索显示功能
2016/05/05 Javascript
基于Echarts 3.19 制作常用的图形(非静态)
2016/05/19 Javascript
JavaScript实现多栏目切换效果
2016/12/12 Javascript
JS实现密码框的显示密码和隐藏密码功能示例
2016/12/26 Javascript
javascript九宫格图片随机打乱位置的实现方法
2017/03/15 Javascript
基于Vue中点击组件外关闭组件的实现方法
2018/03/06 Javascript
微信小程序如何自定义table组件
2019/06/29 Javascript
vuejs+element UI table表格中实现禁用部分复选框的方法
2019/09/20 Javascript
[36:20]完美世界DOTA2联赛PWL S3 access vs Rebirth 第一场 12.17
2020/12/18 DOTA
python实现识别相似图片小结
2016/02/22 Python
python和shell获取文本内容的方法
2018/06/05 Python
springboot配置文件抽离 git管理统 配置中心详解
2019/09/02 Python
Python爬虫 urllib2的使用方法详解
2019/09/23 Python
Django实现简单网页弹出警告代码
2019/11/15 Python
django 实现简单的插入视频
2020/04/07 Python
python 弧度与角度互转实例
2020/04/15 Python
解决TensorFlow程序无限制占用GPU的方法
2020/06/30 Python
opencv 阈值分割的具体使用
2020/07/08 Python
基于Django集成CAS实现流程详解
2020/11/28 Python
基于Python的接口自动化unittest测试框架和ddt数据驱动详解
2021/01/27 Python
澳大利亚首个在线预订旅游网站:Wotif
2017/07/19 全球购物
城市轨道专业个人求职信范文
2013/09/23 职场文书
妇科医生自荐信
2013/11/05 职场文书
司机岗位职责说明书
2014/07/29 职场文书
销售助理岗位职责
2015/02/11 职场文书
2015毕业寄语大全
2015/02/26 职场文书
解决goland 导入项目后import里的包报红问题
2021/05/06 Golang