javaScript中获取鼠标位置的理解

获取鼠标坐标值的总结为了避免混淆知识点

通过《javaScript高级程序设计》查到这些

event.clientX event.clientY event.pageX event.pageY event.screenX event.screenY

document.documentElement.scrollLeft || document.body.sctollLeft document.documentElement.scrollTop || document.body.scrollTop

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>mousePosition</title>
</head>
<body style="height:1000px;padding-top:400px;">
<h1>html鼠标位置有:客户区(视口)坐标位置,html页面坐标位置,屏幕坐标位置</h1>
<h3>鼠标相对于客户区的位置:<span id="client"></span> 所有的浏览器都支持这两个属性的哦!<h3>
<h3>鼠标相对于document的位置:<span id="page"></span> IE8以前的浏览器不支持这两个属性!<h3>
<h3>鼠标相对于屏幕的位置:<span id="screen"></span> 所有的浏览器都支持这两个属性的哦!<h3>
<P>!!!document.body (混杂模式)或 document.documentElement (标准模式)</p>
<script type="text/javascript">
    var oClient = document.getElementById('client');
    var oPage = document.getElementById('page');
    var oScreen = document.getElementById('screen');
    document.onmousemove = function(){
        oClient.innerHTML = 'clientX='+getPointerPostion().clientX+';clientY='+getPointerPostion().clientY;
        oPage.innerHTML = 'pageX='+getPointerPostion().pageX+';pageY='+getPointerPostion().pageY;
        oScreen.innerHTML = 'screenX='+getPointerPostion().screenX+';screenY='+getPointerPostion().screenY;
    }
    function getElementObject(event){
        return event || window.event;
    }
    function getPointerPostion(e){
        e = e || getElementObject(e);
        var clientX = e.clientX;
        var clientY = e.clientY;
        var pageX = e.pageX || (e.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft));
        var pageY = e.pageY || (e.clientY + (document.documentElement.scrollTop || document.body.scrollTop));
        var screenX = e.screenX;
        var screenY = e.screenY;
        return {
            'clientX':clientX,
            'clientY':clientY,
            'pageX':pageX,
            'pageY':pageY,
            'screenX':screenX,
            'screenY':screenY
        };
    }
</script>
</body>
<html>

 

转载于:https://www.cnblogs.com/SmallPotatoIT/p/5903007.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值