鼠标移动效果html5,js实现鼠标左右移动,图片也跟着移动效果
效果:鼠標(biāo)往左移,圖片對應(yīng)右移,鼠標(biāo)往右移,圖片就左移動(dòng)。圖片距離越遠(yuǎn)偏移距離越大。
思路:首先獲取圖片原先的距離。設(shè)置一個(gè)變化值,圖片的最終距離等于原先的距離加上變化值
布局:大盒子里面是圖片,大盒子position:relative;圖片position:absolute;
無標(biāo)題文檔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;}
var oWrap=document.getElementById("wrap");
var aImg=oWrap.getElementsByTagName("img");
var iMax=4;
//獲取圖片的初始位置
for(var i=0;i
aImg[i].startX=parseInt(getStyle(aImg[i],'left'))
}
oWrap.οnmοusemοve=function(ev){
ev=ev||window.event;
//獲取鼠標(biāo)的位置與大盒子中心點(diǎn)位置的距離
var iX=ev.clientX-(oWrap.offsetLeft+this.offsetWidth/2)
for(var i=0;i
//獲取每個(gè)img的z-index
var iZindex=getStyle(aImg[i],'zIndex')
//Zindex越大移動(dòng)的相對距離越小
var iDisL=-parseInt(iX/iMax*(iMax-iZindex)/5)
//圖片的距離等于原先的距離加上計(jì)算的距離
aImg[i].style.left=aImg[i].startX+iDisL+'px'
}
}
function getStyle(obj,attr)
{
if( obj.currentStyle){
return obj.currentStyle[attr];
}
return getComputedStyle(obj)[attr];
}
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時(shí)也希望多多支持腳本之家!
總結(jié)
以上是生活随笔為你收集整理的鼠标移动效果html5,js实现鼠标左右移动,图片也跟着移动效果的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VOLTE注册失败案例
- 下一篇: revit二开之获取嵌套族中的子族(过滤