鼠標(biāo)跟隨,顧名思義,就是在鼠標(biāo)移動的時候,有個動畫跟隨著鼠標(biāo)一起移動。
要點一:
var oEvent = evt || window.event;
這個是為了兼容ie和ff而寫的,在ie下window.event表示event對象,而ff下,是給事件函數(shù)傳一個參數(shù),這個參數(shù)就表示事件對象。
要點二:
document.onmousemove = function(evt)
鼠標(biāo)跟隨是在鼠標(biāo)移動時發(fā)生的事情。
要點三:
document.documentElement.scrollTop || document.body.scrollTop;
這是為了兼容chrome和其它瀏覽器,滾動條距上邊滾動的距離,chrome用后邊那個,其它瀏覽器用前面那個。
要點四:
oTop.style.top=oEvent.clientY+scrolltop+10+"px";
當(dāng)鼠標(biāo)移動時把鼠標(biāo)的當(dāng)前位置賦值給元素的位置值。
oEvent.clientY即為鼠標(biāo)的當(dāng)前Y坐標(biāo)的位置,加scrolltop的距離是要在滾動到不是第一屏的時候,鼠標(biāo)跟隨效果依然不改變而寫。
代碼如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>無標(biāo)題文檔</title>
<style>
body{margin:0; padding:0}
#to_top{
width:30px;
height:40px;
padding:20px;
font:14px/20px arial;
text-align:center;
background:#06c;
position:absolute;
cursor:pointer;
color:#fff
}
</style>
<script>
window.onload = function(){
var oTop = document.getElementById("to_top");
document.onmousemove = function(evt){
var oEvent = evt || window.event;
var scrollleft = document.documentElement.scrollLeft || document.body.scrollLeft;
var scrolltop = document.documentElement.scrollTop || document.body.scrollTop;
oTop.style.left = oEvent.clientX + scrollleft +10 +"px";
oTop.style.top = oEvent.clientY + scrolltop + 10 + "px";
}
}
</script>
</head>
<body style="height:1000px;">
<a href="#">文字</a>
<div id="to_top">鼠標(biāo)跟隨</div>
</body>
</html>
更多信息請查看IT技術(shù)專欄