将鼠标滚轮绑定到 Jquery UI 滑块 [英] Bind Mouse Wheel To Jquery UI Slider

查看:31
本文介绍了将鼠标滚轮绑定到 Jquery UI 滑块的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我进行了搜索,并且有一些类似的帖子,但我似乎无法让它发挥作用.我知道这是陈词滥调,但我对 JQuery 和 JQuery UI 很陌生,因为我的核心技能是 PHP,因此非常感谢任何帮助.以下是我为 JQuery 垂直滑块提供的代码.

I did searches and there were a few similar posts but I can't seem to get it to work. I know that its a cliche but I am quite new to JQuery and JQuery UI as my core skills is PHP, so any help is greatly appreciated. Below are the codes that I have for the JQuery vertical slider.

$("#VerticalScrollBar").slider({    
    orientation: "vertical",
    change: VerticalHandleChange,
    slide: VerticalHandleSlide,
    min: -100,
    max: 0
}); 

和功能

function VerticalHandleChange(e, ui) {
var maxScroll = $(".VerticalScroll").attr("scrollHeight") - $(".VerticalScroll").height();
$(".VerticalScroll").animate({ 
    scrollTop: -ui.value * (maxScroll / 100)
}, 1000);

function VerticalHandleSlide(e, ui) {
var maxScroll = $(".VerticalScroll").attr("scrollHeight") - $(".VerticalScroll").height();
$(".VerticalScroll").attr({ 
    scrollTop: -ui.value * (maxScroll / 100)   
});

垂直滑块工作正常,但现在我需要集成鼠标滚轮支持.我已经下载了 Brandon Aaron 的鼠标滚轮插件(jquery-mousewheel 版本 3.0.4),但我不知道如何在上面的代码中使用它.任何人都可以帮助我吗?再次感谢.

The vertical slider works fine but now I need to integrate mouse wheel support. I have downloaded the mouse wheel plugin by Brandon Aaron (jquery-mousewheel ver. 3.0.4) but I have no idea how to use it with my codes above. Anyone can help me with this? Thanks again.

推荐答案

经过一些测试,我想出了这个解决方案:

After doing some tests I've come up with this solution:

$('#sliderid').on('mousewheel DOMMouseScroll', function(e) {
    var o = e.originalEvent;
    var delta = o && (o.wheelDelta || (o.detail && -o.detail));

    if ( delta ) {
        e.preventDefault();

        var step = $(this).slider("option", "step");
            step *= delta < 0 ? 1 : -1;
        $(this).slider("value", $(this).slider("value") + step);
    }
});

似乎在 Chrome/Firefox/Opera 上运行良好(使用 jQuery 1.10.1)

Seems to work fine on Chrome/Firefox/Opera (using jQuery 1.10.1)

这篇关于将鼠标滚轮绑定到 Jquery UI 滑块的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆