大家好,现在给大家展示一个视觉效应的案例;
思路:一张背景图,一张图片,产生重叠,通过鼠标的移动,让2张图片的跟随移动
代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="{CHARSET}">
<title></title>
<style>
*{margin:0;padding:0;}
ul,ol,li{list-style:none;}
.vision{width:750px;height:200px;position:relative;overflow:hidden;left: 100px;}
.vision li{width:850px;height:200px;position:absolute;top:0;left:-50px;}
.zz{width:750px;height:200px;position:absolute;top:0;left:0;border: 1px solid red;}
</style>
</head>
<body>
<ul class="vision">
<li><img src="1.png" alt="" /></li>
<li><img src="2.png" alt="" /></li>
<div class="zz"></div>
</ul>
<script>
var odiv = document.getElementsByClassName("vision")[0];
var oli = odiv.getElementsByTagName("li");
var ozz = odiv.getElementsByClassName("zz")[0];
ozz.onmouseover = function(){
ozz.onmousemove = function(evt){
evt = evt || window.event;
var a = 50 * evt.offsetX / ozz.offsetWidth;
var b = 2 * a;
oli[0].style.left = a - 75 + "px";
oli[1].style.left = b - 100 + "px";
}
ozz.onmouseout = function(){
ozz.onmousemove = null;
}
}
</script>
</body>
</html>
效果如下: