我们开发了一个水平方向的网站,并希望实现使用两根手指在触摸板上左右移动的控制。
当您在触摸板上用两个手指向左/向右滑动时,网站页面将被左/右滚动。现在我们已经使用两个手指向上/向下移动并使页面左/右滚动来实现了触摸板控制。
如何使用js或jQuery将触摸板控制从上/下移动改为左/右移动,以滚动网站页面左/右?
我们开发了一个水平方向的网站,并希望实现使用两根手指在触摸板上左右移动的控制。
当您在触摸板上用两个手指向左/向右滑动时,网站页面将被左/右滚动。现在我们已经使用两个手指向上/向下移动并使页面左/右滚动来实现了触摸板控制。
如何使用js或jQuery将触摸板控制从上/下移动改为左/右移动,以滚动网站页面左/右?
我可能有点晚了,但在偶然间看到这个问题之前也有同样的疑问。进一步调查后,我认为捕获触摸板滚动的最佳方法是使用wheel
事件。
function doScroll(e) {
// positive deltas are top and left
// down and right are negative
// horizontal offset e.deltaX
// vertical offset e.deltaY
console.log(`x:${e.deltaX} y:${e.deltaY}`);
e.preventDefault(); // disable the actual scrolling
}
window.addEventListener("wheel", doScroll, false);
我准备了一个fiddle,告诉你滚动的方向和偏移量,但不会进行滚动本身。
滚轮事件有一个delta属性,在Chrome浏览器中至少对于惯性敏感,并且提供了相对滚动偏移量而非在scroll
事件中可用的绝对滚动位置。
$("body").bind("touchstart", function(e) {
e.preventDefault();
})