这篇文章主要为大家详细介绍了js实现滑动门效果的代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
一、实现滑动门所需技术
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>
CSS
*{
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);
}
}
关于js实现滑动门效果的详细代码就分享到这里了,当然并不止以上和大家分析的办法,不过小编可以保证其准确性是绝对没问题的。希望以上内容可以对大家有一定的参考价值,可以学以致用。如果喜欢本篇文章,不妨把它分享出去让更多的人看到。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。