js实现简单鼠标跟随效果的方法


Posted in Javascript onApril 10, 2015

本文实例讲述了js实现简单鼠标跟随效果的方法。分享给大家供大家参考。具体分析如下:

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

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>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
原生javascript实现图片轮播效果代码
Sep 03 Javascript
JSChart轻量级图形报表工具(内置函数中文参考)
Oct 11 Javascript
重写javascript中window.confirm的行为
Oct 21 Javascript
JavaScript实现弹出子窗口并传值给父窗口
Dec 18 Javascript
javascript实现可全选、反选及删除表格的方法
May 15 Javascript
jquery实现下拉框功能效果【实例代码】
May 06 Javascript
根据Bootstrap Paginator改写的js分页插件
Dec 25 Javascript
详解angularjs获取元素以及angular.element()用法
Jul 25 Javascript
JS 仿支付宝input文本输入框放大组件的实例
Nov 14 Javascript
Vue+webpack项目基础配置教程
Feb 12 Javascript
vue计算属性和监听器实例解析
May 10 Javascript
vuecli3.x中轻松4步带你使用tinymce的步骤
Jun 25 Javascript
js实现交换运动效果的方法
Apr 10 #Javascript
js实现简单的左右两边固定广告效果实例
Apr 10 #Javascript
javascript实现简单的鼠标拖动效果实例
Apr 10 #Javascript
js简单实现点击左右运动的方法
Apr 10 #Javascript
js实现透明度渐变效果的方法
Apr 10 #Javascript
js实现同一页面多个运动效果的方法
Apr 10 #Javascript
js实现同一个页面多个渐变效果的方法
Apr 10 #Javascript
You might like
全国FM电台频率大全 - 18 湖南省
2020/03/11 无线电
PHP初学者头疼问题总结
2006/10/09 PHP
php获取发送给用户的header信息的方法
2015/03/16 PHP
PHP如何开启Opcache功能提升程序处理效率
2020/04/27 PHP
小型js框架veryide.librar源代码
2009/03/05 Javascript
JS 控制CSS样式表
2009/08/20 Javascript
JS打开新窗口的2种方式
2013/04/18 Javascript
javascript常用的方法分享
2015/07/01 Javascript
jQuery实现表单步骤流程导航代码分享
2015/08/28 Javascript
jquery表单插件Autotab使用方法详解
2016/06/24 Javascript
Bootstrap基本模板的使用和理解1
2016/12/14 Javascript
jQuery实现淡入淡出的模态框
2017/02/09 Javascript
详谈js遍历集合(Array,Map,Set)
2017/04/06 Javascript
vue.js如何将echarts封装为组件一键使用详解
2017/10/10 Javascript
浅谈JavaScript_DOM学习篇_图片切换小案例
2019/03/19 Javascript
vue父子组件间引用之$parent、$children
2020/05/20 Javascript
[50:01]Ti4 冒泡赛第二天 NEWBEE vs Titan
2014/07/15 DOTA
python字符串加密解密的三种方法分享(base64 win32com)
2014/01/19 Python
Python Queue模块详解
2014/11/30 Python
在Django框架中编写Context处理器的方法
2015/07/20 Python
python利用lxml读写xml格式的文件
2017/08/10 Python
TensorFlow实现iris数据集线性回归
2018/09/07 Python
Python随机生成身份证号码及校验功能
2018/12/04 Python
Python如何实现爬取B站视频
2020/05/20 Python
Python xlrd模块导入过程及常用操作
2020/06/10 Python
pip已经安装好第三方库但pycharm中import时还是标红的解决方案
2020/10/09 Python
使用html5制作loading图的示例
2014/04/14 HTML / CSS
澳大利亚家庭花园和DIY工具网店:VidaXL
2019/05/03 全球购物
Java中各种基本数据类型的默认值都是什么
2016/12/22 面试题
公务员更新知识培训实施方案
2014/03/31 职场文书
出国留学经济担保书
2014/04/01 职场文书
单位绩效考核方案
2014/05/11 职场文书
习近平在党的群众路线教育实践活动总结大会上的讲话全文
2014/10/25 职场文书
2014年团委工作总结
2014/11/13 职场文书
2014年施工员工作总结
2014/11/18 职场文书
考生诚信考试承诺书(2016版)
2016/03/25 职场文书