event.originalEvent.touches和event.pageX不存在怎么获得
时间: 2024-04-15 13:30:02 浏览: 110
JS和JQ的event对象区别分析
如果 `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);
});
```
请注意,以上代码仅适用于获取相对于浏览器窗口可视区域的坐标。如果你需要获取相对于整个页面的坐标,你可能需要结合页面滚动的位置来计算。
如果以上方法仍然无法获取到所需的坐标信息,请提供更多关于你正在处理的事件类型和代码上下文的细节,以便我们给出更具体的解决方案。
阅读全文