欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

用js实现简单的鼠标跟随效果 有大用

可以结合  /node/7240

 

鼠标跟随,顾名思义,就是在鼠标移动的时候,有个动画跟随着鼠标一起移动。

 

要点一:var oEvent = evt || window.event;  这个是为了兼容ie和ff而写的,在ie下window.event表示event对象,而ff下,是给事件函数传一个参数,这个参数就表示事件对象。

要点二:document.onmousemove = function(evt)    鼠标跟随是在鼠标移动时发生的事情。

 

要点三:document.documentElement.scrollTop || document.body.scrollTop;这是为了兼容chrome和其它浏览器,滚动条距上边滚动的距离,chrome用后边那个,其它浏览器用前面那个。

要点四:oTop.style.top = oEvent.clientY + scrolltop + 10 + "px";  当鼠标移动时把鼠标的当前位置赋值给元素的位置值。

oEvent.clientY即为鼠标的当前Y坐标的位置,加scrolltop的距离是要在滚动到不是第一屏的时候,鼠标跟随效果依然不改变而写。

 

 代码如下:

 

复制代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>无标题文档</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">鼠标跟随</div>
</body>
</html>
复制代码


 

我的微博 http://weibo.com/u/1650528354 
博客地址 http://www.cnblogs.com/jingangel/ 
本博的代码都是博主边学习边写的,代码都是自己敲的,如果要复制请加上出处,谢谢!

来自 http://www.cnblogs.com/jingangel/archive/2012/03/08/2385797.html

普通分类: