Javascript / Jquery:确定用户是否使用鼠标滚轮或滚动条或键盘滚动

我正在尝试让用户界面工作,如果他们使用鼠标滚轮,我需要让它滚动一个方向,如果他们使用滚动条,我需要另一种方式,如果他们使用键盘,则需要另一种方式。 我相信滚轮和滚动条都可以作为鼠标事件,但是当点击滚动条时我无法使javascript工作。

滚动条上的鼠标事件在浏览器之间差异很大,并不是您可以信赖的。 我做了一些测试,这是我发现的:

  • 即使拖动栏,Firefox也会在滚动条上正确触发所有事件(鼠标按下,移动和向上)。
  • IE6会将鼠标向下但不向上,只有在拖动条形图时才会触发事件。
  • Chrome(因此我也假设Safari) 触发鼠标按下事件。

我应该补充一点,我没有看到你想要做你所描述的任何情况,即以不同的方式进行滚动。