【浏览器】event.pageX/Y页面坐标(CSS像素) event.clientX/Y视口Viewport坐标(CSS像素) event.screenX/Y屏幕坐标(屏幕像素)

  1. pageX/Y gives the coordinates relative to the <html> element in CSS pixels.
  2. clientX/Y gives the coordinates relative to the viewport in CSS pixels.
  3. screenX/Y gives the coordinates relative to the screen in device pixels.

  • pageX/Y提供了相对于<html>元素的以CSS像素度量的坐标。

desktop_pageXY

  • clientX/Y提供了相对于viewport的以CSS像素度量的坐标。

desktop_clientXY

  • screenX/Y提供了相对于屏幕的以设备像素进行度量的坐标。

desktop_screenXY

90%的时间你将会使用pageX/Y;通常情况下你想知道的是相对于文档的事件坐标。其他的10%时间你将会使用clientX/Y。你永远不需要知道事件相对于屏幕的坐标。

如果 `event.originalEvent.touches` 和 `event.pageX` 属性都不存在,那么可能是因为你的事件对象 `event` 不是鼠标事件或触摸事件。在这种情况下,你可以尝试使用其他属性或方法来获取页面上的X坐标。 首先,你可以尝试使用 `event.clientX` 和 `event.clientY` 属性来获取鼠标事件的页面坐标。这两个属性表示鼠标相对于浏览器区域的坐标,而不是相对于整个页面坐标。 ```javascript $("#flipbook").on("mousedown", function(event) { var startX = event.clientX; // 鼠标事件的X坐标 console.log("startX:", startX); }); ``` 如果你处理的是触摸事件,可以尝试使用 `event.originalEvent.changedTouches[0].clientX` 和 `event.originalEvent.changedTouches[0].clientY` 属性来获取触摸事件的页面坐标。和鼠标事件类似,这些属性表示触摸点相对于浏览器区域的坐标。 ```javascript $("#flipbook").on("touchstart", function(event) { var touch = event.originalEvent.changedTouches[0]; var startX = touch.clientX; // 触摸事件的X坐标 console.log("startX:", startX); }); ``` 请注意,以上代码仅适用于获取相对于浏览器区域的坐标。如果你需要获取相对于整个页面坐标,你可能需要结合页面滚动的位置来计算。 如果以上方法仍然无法获取到所需的坐标信息,请提供更多关于你正在处理的事件类型和代码上下文的细节,以便我们给出更具体的解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值