鼠标滚动标准化+水平滚动

时间:2017-12-22 09:40:54

标签: javascript jquery mouseevent mouse normalize

我目前正在制作一个网站。该网站的特色是水平滚动图像轮播。这充当了客户的投资组合。

为了改善用户体验,我将以下脚本(与jquery.mousewheel.js结合使用)包含在悬停在.carousel元素上时将任何垂直鼠标滚动转换为水平滚动。

$('.carousel').mousewheel(function(e, delta) {

  $(this).scrollLeft(this.scrollLeft + (-delta * 40));

  e.preventDefault();

});

这在翻译输入时效果很好。

我面临的问题是不同的输入设备(触控板,常规鼠标)以极低的速率滚动,尽管jquery.mousewheel.js处理这些设备之间的规范化。

如果我调整脚本以允许触控板(-delta * 1),常规鼠标将慢慢滚动(每轮调整一个像素左右)。如果我允许常规鼠标输入(-delta * 40),则触控板将快速滚动。

Here is an example of the intended functionality.

我唯一能想到的是,第二个脚本在某种程度上干扰了jquery.mousewheel.js,可能会阻止正常化初始化。其次,更有可能的是,我没有正确实现这一点。

非常感谢任何见解。

0 个答案:

没有答案