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 相关文章推荐
js 程序执行与顺序实现详解
May 13 Javascript
JQuery解析HTML、JSON和XML实例详解
Mar 29 Javascript
jquery渐隐渐显的图片幻灯闪烁切换实现方法
Feb 26 Javascript
JavaScript脚本判断蜘蛛来源的方法
Sep 22 Javascript
jQuery Validate插件实现表单强大的验证功能
Dec 18 Javascript
JS对HTML表格进行增删改操作
Aug 22 Javascript
bootstrap weebox 支持ajax的模态弹出框
Feb 23 Javascript
JS实现定时任务每隔N秒请求后台setInterval定时和ajax请求问题
Oct 15 Javascript
vue-router的HTML5 History 模式设置
Sep 08 Javascript
微信小程序页面传多个参数跳转页面的实现方法
May 17 Javascript
浅谈vue3中effect与computed的亲密关系
Oct 10 Javascript
小程序按钮避免多次调用接口和点击方案实现(不用showLoading)
Apr 15 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
全文搜索和替换
2006/10/09 PHP
PHP 上传文件的方法(类)
2009/07/30 PHP
教你在PHPStorm中配置Xdebug
2015/07/27 PHP
PHP延迟静态绑定使用方法实例解析
2020/09/05 PHP
js post方式传递提交的实现代码
2010/05/31 Javascript
js Math 对象的方法
2013/09/01 Javascript
js类定义函数时用prototype与不用的区别示例介绍
2014/06/10 Javascript
jQuery插件bxSlider实现响应式焦点图
2015/04/12 Javascript
基于jquery实现简单的手风琴特效
2015/11/24 Javascript
AngularJS 过滤与排序详解及实例代码
2016/09/14 Javascript
JS使用正则截取两个字符串之间的字符串实现方法详解
2017/01/06 Javascript
BootStrap表单控件之复选框checkbox和单选择按钮radio
2017/05/23 Javascript
JS判断数组那点事
2017/10/10 Javascript
微信小程序封装自定义弹窗的实现代码
2019/05/08 Javascript
原生js实现贪食蛇小游戏的思路详解
2019/11/26 Javascript
[02:33]2014DOTA2 TI每日综述 LGD涉险晋级DK闯入胜者组
2014/07/14 DOTA
Python2.5/2.6实用教程 入门基础篇
2009/11/29 Python
python 算法 排序实现快速排序
2012/06/05 Python
python re正则表达式模块(Regular Expression)
2014/07/16 Python
Python探索之创建二叉树
2017/10/25 Python
DataFrame中去除指定列为空的行方法
2018/04/08 Python
django使用LDAP验证的方法示例
2018/12/10 Python
Python实现直方图均衡基本原理解析
2019/08/08 Python
python itsdangerous模块的具体使用方法
2020/02/17 Python
Python绘图之二维图与三维图详解
2020/08/04 Python
The Hut美国/加拿大:英国领先的豪华在线百货商店
2019/03/26 全球购物
欧洲、亚洲、非洲和拉丁美洲的度假套餐:Great Value Vacations
2019/03/30 全球购物
大唐面试试题(CPU,UNIX等等)
2012/01/11 面试题
2014新生大学四年计划书
2014/09/21 职场文书
2014年保卫工作总结
2014/12/05 职场文书
教代会开幕词
2015/01/28 职场文书
天堂的孩子观后感
2015/06/11 职场文书
信息技术教研组工作总结
2015/08/13 职场文书
2015年美容师个人工作总结
2015/10/14 职场文书
数据库连接池
2021/04/06 MySQL
Python anaconda安装库命令详解
2021/10/16 Python