美文网首页我爱编程
图解Js event对象offsetX, clientX, pa

图解Js event对象offsetX, clientX, pa

作者: 那年点夏 | 来源:发表于2018-03-29 17:05 被阅读0次

一、测试代码

<!DOCTYPE HTML>  
<html lang="zh-cn">  
<head>  
<meta charset="utf-8" />  
<title>Javascript</title>  
<style>  
body{margin:0;padding:0;background:#ccc;font-size:12px;overflow:auto}  
.main{width: 500px;height: 330px;position: relative;margin: 250px auto 0;background-color: #eee;}  
.box{position: absolute;width: 220px;height: 180px;background-color: orange;top: 80px;left: 80px;}  
</style>  
</head>  
  
<body style="height:1600px;">  
<div class="main">  
    <div class="box" id="box"></div>  
</div>  
  
<script>  
var oBox = document.getElementById('box');  
  
window.onload = function(){  
      
    oBox.onmousedown = function(ev){  
        ev = ev || window.event;  
          
        console.log(ev.offsetX, ev.offsetY);  
        console.log(ev.clientX, ev.clientY);  
        console.log(ev.pageX, ev.pageY);  
        console.log(ev.screenX, ev.screenY);  
        console.log(ev.layerX, ev.layerY);  
        console.log(ev.x, ev.y);  
    }  
}  
  
</script>  
</body>  
</html>  

二、图解 event.offsetX,event.clientX,event.pageX,event.screenX属性

图解一.jpg

三、图解 event.layerX,event.layerY 属性

二.jpg

四、图解 event.x,event.y 属性

三.jpg

五、jquery兼容写法

<script>  
$(function(){  
    $("#box").mousedown(function(event){  
        console.log(event.offsetX, event.offsetY);  
        console.log(event.clientX, event.clientY);  
        console.log(event.pageX, event.pageY);  
        console.log(event.screenX, event.screenY);  
  
        /* firefox */  
        console.log(event.originalEvent.layerX, event.originalEvent.layerY);  
    });  
});  
</script>  

相关文章

网友评论

    本文标题:图解Js event对象offsetX, clientX, pa

    本文链接:https://www.haomeiwen.com/subject/tzxvcftx.html