-
Notifications
You must be signed in to change notification settings - Fork 26
/
pageXandLayerX.html
76 lines (63 loc) · 1.89 KB
/
pageXandLayerX.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<html>
<head>
<meta charset=utf-8>
<title>pageX\pageY & layerX\layerY example</title>
<script type="text/javascript">
function showCoords(evt){
var form = document.forms.form_coords;
var parent_id = evt.target.parentNode.id;
form.parentId.value = parent_id;
form.pageXCoords.value = evt.pageX;
form.pageYCoords.value = evt.pageY;
form.layerXCoords.value = evt.layerX;
form.layerYCoords.value = evt.layerY;
}
</script>
<style type="text/css">
body{
height:1000px;
}
#d1 {
border: solid #ef4c6c 5px;
padding: 20px;
}
#d2 {
position: absolute;
top: 85%;
left: 60%;
right:10%;
width: 30%;
border: solid #ef4c6c 5px;
padding: 20px;
}
#d3 {
position: absolute;
top: 240px;
left: 20%;
width: 50%;
border: solid #ef4c6c 5px;
padding: 10px;
}
</style>
</head>
<body onmousedown="showCoords(event)">
<p>TIPS:尝试点击页面的任何一个位置,可以来查看pageX/pageY坐标和layerX/layerY坐标的区别:</p>
<div id="d1">
<span>这是一个非绝对定位的元素,所以点击这里面的任意一个位置,基本上会返回相同的
layerX/layerY和pageX/PageY 值.</span>
</div>
<div id="d2">
<span>这是一个绝对定位的元素,所以点击此元素内部返回的layerX/layerY的值是相对于这个绝对定位的元素的左上角的坐标。但是pageX\pageY 的值依旧是想对整个文档的位置坐标,并且包括页面滚动后的位置。即pageX\pageY 依旧是相对整个文档的。</span>
</div>
<div id="d3">
<form name="form_coords">
当前点击位置的父元素id: <input type="text" name="parentId" size="7" /><br />
pageX:<input type="text" name="pageXCoords" size="7" />
pageY:<input type="text" name="pageYCoords" size="7" /><br />
layerX:<input type="text" name="layerXCoords" size="7" />
layerY:<input type="text" name="layerYCoords" size="7" />
<p>此form也是绝对定位元素</p>
</form>
</div>
</body>
</html>