MouseEvent: layerX 属性
非标准:此特性未标准化。我们不建议在生产环境中使用非标准特性,因为它们浏览器支持有限,并且可能会更改或被移除。但是,在没有标准选项的特定情况下,它们可以是合适的替代方案。
MouseEvent.layerX 只读属性返回事件相对于当前图层的水平坐标。
此属性会考虑页面的滚动,并返回相对于整个文档的值,除非事件发生在定位元素内部,此时返回的值相对于该定位元素的左上角。
值
鼠标事件触发时,鼠标指针 x 坐标的像素整数值。
示例
html
<p>To display the mouse coordinates please click anywhere on the page.</p>
<div id="d1">
<span>
This is an un-positioned div so clicking it will return layerX/layerY values
almost the same as pageX/PageY values.
</span>
</div>
<div id="d2">
<span>
This is a positioned div so clicking it will return layerX/layerY values
that are relative to the top-left corner of this positioned element. Note
the pageX\pageY properties still return the absolute position in the
document, including page scrolling.
</span>
<span>
Make the page scroll more! This is a positioned div so clicking it will
return layerX/layerY values that are relative to the top-left corner of this
positioned element. Note the pageX\pageY properties still return the
absolute position in the document, including page scrolling.
</span>
</div>
<div id="d3">
<form name="form_coords" id="form1">
Parent Element 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" />
</form>
</div>
css
#d1 {
border: solid blue 1px;
padding: 20px;
}
#d2 {
position: absolute;
top: 180px;
left: 80%;
right: auto;
width: 40%;
border: solid blue 1px;
padding: 20px;
}
#d3 {
position: absolute;
top: 240px;
left: 20%;
width: 50%;
border: solid blue 1px;
padding: 10px;
}
js
function showCoords(evt) {
const form = document.forms.form_coords;
const parentId = evt.target.parentNode.id;
form.parentId.value = parentId;
form.pageXCoords.value = evt.pageX;
form.pageYCoords.value = evt.pageY;
form.layerXCoords.value = evt.layerX;
form.layerYCoords.value = evt.layerY;
}
window.addEventListener("mousedown", showCoords);
规范
此属性不属于任何规范。
浏览器兼容性
加载中…