Javascript 捕获滚轮事件以将向上/向下更改为向下/向上
我有一个客户,他想更改他们网站的功能,这样用户从网站的底部开始,必须向下滚动才能向上导航 所以基本上,我需要一种方法来反转滚动功能,这样如果你向下滚动,它就会向上滚动,反之亦然 我做了一些研究,发现了这个(),这让我有了下面的内容来捕捉滚动事件:Javascript 捕获滚轮事件以将向上/向下更改为向下/向上,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个客户,他想更改他们网站的功能,这样用户从网站的底部开始,必须向下滚动才能向上导航 所以基本上,我需要一种方法来反转滚动功能,这样如果你向下滚动,它就会向上滚动,反之亦然 我做了一些研究,发现了这个(),这让我有了下面的内容来捕捉滚动事件: var lastScrollTop = 0; $(window).scroll(function (event) { var st = $(this).scrollTop();
var lastScrollTop = 0;
$(window).scroll(function (event) {
var st = $(this).scrollTop();
if (st > lastScrollTop) {
// downscroll code
alert("DOWN");
} else {
// upscroll code
alert("UP");
}
lastScrollTop = st;
});
这很好,它可以识别用户是向上还是向下滚动
但我不知道我能做些什么:
有人知道我在这里能做什么吗?或者,如果有一种完全不同的方法可以使用插件或其他方法来实现这一点,我愿意做任何事情。这里有一个快速组合: 基本上,您希望捕获
mouseweel
事件(或DOMMouseScroll
事件)并阻止默认设置
两方面的文件:
鼠标滚轮:(大多数主要浏览器)
DOMMouseScroll:(FireFox/Gecko)
不幸的是,正如您所看到的,它不是一个“标准”,因此支持不能得到保证
需要指出的一点是,偏移量是10px
。虽然这是硬编码的(并且可能是您的客户正在寻找的),但这并不理想——因为您期望惯性。此外,这是用禁用“正常”滚动功能的MacBooK Pro进行测试的(向上滚动是向下滚动还是其他什么),所以我不确定这在delta方面如何发挥作用
最后,如果想要删除滚动条,您可以偏移容器的顶部
位置
祝你好运 我很好奇-当用户开始“反向”滚动时,您在什么时候启用“正常”滚动?在用户返回页面顶部之前,是否反转滚动?或者,您是否允许他们在一段时间后再次开始滚动?这是一个如此奇怪的互动…@JackPattishall-它永远不会回到正常的滚动。向下/向上总是向上/向下。是的,我同意这种奇怪的互动:)我猜他们想要的是“你向下滚动,内容向下移动”的外观。啊,我明白了。对不起,我误解了你的要求。当你到达页面底部时,我还以为你在反向滚动呢!您的初始状态或起始点位于页面底部??然后,当用户“向下滚动”时,页面会向上滚动?用户会看到滚动条吗?(他们在页面的底部?)他们可以画“拇指”向上滚动到顶部吗?(或者,你想把它藏起来吗?)这太棒了!正是我想要的。我不确定滚动条是否可见,但我不确定我是否理解您通过偏移容器顶部位置提出的建议。我该如何修改它?嗨,史蒂文!伟人。关于滚动条-假设客户端希望您隐藏滚动条。然后操作溢出(而不是滚动条)-因此偏移量位于顶部
位置。大概是这样的: