首页 > 作文

鼠标挂件(gif图跟随鼠标移动)

更新时间:2023-04-07 17:26:55 阅读: 评论:0

让下面这张翅膀图片跟随鼠标移动,怎么做呢?
其实就是利用到 事件参数对象 e 或者说window.event(IE8不支持e),来获取鼠标的位置,然后把位置赋值给图片的位置就好了。很简单!

    <!DOCTYPE ht四表ml>    <html lang="en">    <head>        <meta chart="UTF-8">        <meta name="viewport" content="width=device-width, initial-scale=1.0">        <title&学历信息查询gt;Document</title>        <style>            img{                 width: 100px;                height: 50px;                position: absolute;            }        </style>    </head>    <body>        <img id="img1" src="images/翅膀.gif" alt="">    <script src="common.js"></script>      <script>        document.onmoumove = function(e){             e=window.event||e;            my$("img1").style.left商务英语专业描述 = e.clientX+"px";            my$("img1").style.top = e.clientY+"px";            console.log(e.clientX)        }    </script>      </body>    网站推广员</html>

但是随之问题就出来了,由于clientX和clientY表示的是***可视区域***的left和top值,如果网页有滚动条的话,随着滚动条往下,鼠标位置不变,可以看一个bug,就是图片像上飞走,因为鼠标的实际位置变大了,但是可视区域的x和y没有变。这里可以用pageX和pageY代替,但是可气的是,IE8是不支持这个属性的。所以还有一个方法,那就是可视区域的坐标加上向上滚动出去距离就是鼠标当前的目标。
下面是兼容代码

 var evt={     //wind小学信息技术教案ow.event和事件参数对象e的兼容    getEvent:function (evt) {       return window.event||evt;    },    //可视区域的横坐标的兼容代码    getClientX:function (evt) {       return this.getEvent(evt).clientX;    },    //可视区域的纵坐标的兼容代码    getClientY:function (evt) {       return this.getEvent(evt).clientY;    },    //页面向左卷曲出去的横坐标    getScrollLeft:function () {       return window.pageXOfft||document.body.scrollLeft||document.documentElement.scrollLeft||0;    },    //页面向上卷曲出去的纵坐标    getScrollTop:function () {       return window.pageYOfft||document.body.scrollTop||document.documentElement.scrollTop||0;    },    //相对于页面的横坐标(pageX或者是clientX+scrollLeft)    getPageX:function (evt) {       return this.getEvent(evt).pageX? this.getEvent(evt).pageX:this.getClientX(evt)+this.getScrollLeft();    },    //相对于页面的纵坐标(pageY或者是clientY+scrollTop)    getPageY:function (evt) {       return this.getEvent(evt).pageY?this.getEvent(evt).pageY:this.getClientY(evt)+this.getScrollTop();    }  };
  document.onmoumove=function (e) {     my$("im").style.left=evt.getPageX(e)+"px";    my$("im").style.top=evt.getPageY(e)+"px";  };

这样就完成啦!

本文地址:https://blog.csdn.net/weixin_41865901/article/details/112507705

本文发布于:2023-04-07 17:26:53,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/4983d567303aa2bb5db6246a97247206.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:鼠标挂件(gif图跟随鼠标移动).doc

本文 PDF 下载地址:鼠标挂件(gif图跟随鼠标移动).pdf

标签:鼠标   可视   纵坐标   横坐标
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图