js实现鼠标左右移动,图片也跟着移动效果


Posted in Javascript onJanuary 25, 2017

效果:鼠标往左移,图片对应右移,鼠标往右移,图片就左移动。图片距离越远偏移距离越大。

思路:首先获取图片原先的距离。设置一个变化值,图片的最终距离等于原先的距离加上变化值

布局:大盒子里面是图片,大盒子position:relative;图片position:absolute;

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<style>
body{margin:0;}
#wrap{width:800px;height:500px;margin:30px auto; border:1px solid #000; position:relative;}
#wrap img{ position:absolute;}
#wrap img:nth-of-type(1){ left:200px;top:200px; z-index:0;}
#wrap img:nth-of-type(2){ left:300px;top:180px; z-index:1;}
#wrap img:nth-of-type(3){ left:100px;top:100px; z-index:2;}
#wrap img:nth-of-type(4){ left:400px;top:110px; z-index:3;}
</style>
</head>
<body>
<div id="wrap">
 <img src="http://cdn.attach.qdfuns.com/notes/pics/201701/18/094455cpacwz1yai2ap43p.jpg.editor.jpg" />
 <img src="http://cdn.attach.qdfuns.com/notes/pics/201701/18/094455csz3xxx1x23um7e9.jpg.editor.jpg" />
 <img src="http://cdn.attach.qdfuns.com/notes/pics/201701/18/094455fv3rzfoov04owrof.jpg.editor.jpg" />
 <img src="http://cdn.attach.qdfuns.com/notes/pics/201701/18/094455fv3rzfoov04owrof.jpg.editor.jpg" />
</div>
<script>
var oWrap=document.getElementById("wrap");
var aImg=oWrap.getElementsByTagName("img");
var iMax=4;
//获取图片的初始位置
for(var i=0;i<aImg.length;i++){
 aImg[i].startX=parseInt(getStyle(aImg[i],'left'))
}
oWrap.onmousemove=function(ev){
 ev=ev||window.event;
 //获取鼠标的位置与大盒子中心点位置的距离
 var iX=ev.clientX-(oWrap.offsetLeft+this.offsetWidth/2)
 for(var i=0;i<aImg.length;i++){
 //获取每个img的z-index
 var iZindex=getStyle(aImg[i],'zIndex')
 //Zindex越大移动的相对距离越小
 var iDisL=-parseInt(iX/iMax*(iMax-iZindex)/5)
 //图片的距离等于原先的距离加上计算的距离
 aImg[i].style.left=aImg[i].startX+iDisL+'px'
 }
}
function getStyle(obj,attr)
{
 if( obj.currentStyle){
 return obj.currentStyle[attr]; 
 }
 return getComputedStyle(obj)[attr]; 
}
</script>
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
一个javascript参数的小问题
Mar 02 Javascript
GRID拖拽行的实例代码
Jul 18 Javascript
Js操作Select大全(取值、设置选中等等)
Oct 29 Javascript
JS实现的N多简单无缝滚动代码(包含图文效果)
Nov 06 Javascript
阻止表单提交按钮多次提交的完美解决方法
May 16 Javascript
seajs学习教程之基础篇
Oct 20 Javascript
JS中的作用域链
Mar 01 Javascript
mui上拉加载更多下拉刷新数据的封装过程
Nov 03 Javascript
Vue 组件封装 并使用 NPM 发布的教程
Sep 30 Javascript
jQuery加PHP实现图片上传并提交的示例代码
Jul 16 jQuery
浅谈JavaScript浅拷贝和深拷贝
Nov 07 Javascript
vue elementUI批量上传文件
Apr 26 Vue.js
JavaScript 网页中实现一个计算当年还剩多少时间的倒数计时程序
Jan 25 #Javascript
js实现文字选中分享功能
Jan 25 #Javascript
利用Js+Css实现折纸动态导航效果实例源码
Jan 25 #Javascript
jquery实现拖动效果(代码分享)
Jan 25 #Javascript
angular forEach方法遍历源码解读
Jan 25 #Javascript
three.js实现围绕某物体旋转
Jan 25 #Javascript
基于Marquee.js插件实现的跑马灯效果示例
Jan 25 #Javascript
You might like
PHP中的超全局变量
2006/10/09 PHP
phpmyadmin MySQL 加密配置方法
2009/07/05 PHP
仿AS3实现PHP 事件机制实现代码
2011/01/27 PHP
DISCUZ在win2003环境下 Unable to access ./include/common.inc.php in... 的问题终极解决方案
2011/11/21 PHP
PHP中使用Session配合Javascript实现文件上传进度条功能
2014/10/15 PHP
PHP两种快速排序算法实例
2015/02/15 PHP
php动态生成版权所有信息的方法
2015/03/24 PHP
PHP中的类型约束介绍
2015/05/11 PHP
php+mysql实现简单的增删改查功能
2015/07/13 PHP
php使用CutyCapt实现网页截图保存的方法
2016/10/03 PHP
PHP与服务器文件系统的简单交互
2016/10/21 PHP
Javascript中引用示例介绍
2014/02/21 Javascript
用js一次改变多个input的readonly属性值的方法
2014/06/11 Javascript
JavaScript获取伪元素(Pseudo-Element)属性的方法技巧
2015/03/13 Javascript
Jquery uploadify上传插件使用详解
2016/01/13 Javascript
jQuery Easyui学习之datagrid 动态添加、移除editor
2016/01/27 Javascript
js点击返回跳转到指定页面实现过程
2020/08/20 Javascript
小程序分页实践之编写可复用分页组件
2019/07/18 Javascript
vue子传父关于.sync与$emit的实现
2019/11/05 Javascript
[59:00]DOTA2-DPC中国联赛 正赛 Ehome vs PSG.LGD BO3 第一场 3月7日
2021/03/11 DOTA
在Python的Django框架中调用方法和处理无效变量
2015/07/15 Python
全面理解Python中self的用法
2016/06/04 Python
使用Python实现简单的服务器功能
2017/08/25 Python
pandas系列之DataFrame 行列数据筛选实例
2018/04/12 Python
Python爬虫之正则表达式的使用教程详解
2018/10/25 Python
python中dir()与__dict__属性的区别浅析
2018/12/10 Python
解析python 中/ 和 % 和 //(地板除)
2020/06/28 Python
Bitiba意大利:在线宠物商店
2020/10/31 全球购物
人力资源管理专业毕业生推荐信
2013/11/07 职场文书
人力资源管理专业学生自我评价
2013/11/20 职场文书
巡警年度自我鉴定
2014/02/21 职场文书
法律专业自荐信
2014/06/03 职场文书
公司离职证明范本(汇总)
2014/09/10 职场文书
《秋思》教学反思
2016/02/23 职场文书
励志正能量20句:送给所有为梦想拼搏的人
2019/11/11 职场文书
搭建zabbix监控以及邮件报警的超级详细教学
2022/07/15 Servers