【问题标题】:Change and Slide called together jqueryui slider更改和滑动一起调用 jqueryui 滑块
【发布时间】:2013-03-04 14:32:57
【问题描述】:

我正在尝试创建一个 jquery 句柄,当您滑动它时,它会在容器内移动另一个 div。以下是我的js

function handleSliderChange(e, ui)
{
    console.log('1');
    var maxScroll = $(".content-item").width()*$(".content-item").length - $("#content-scroll").width();
    $("#content-scroll").animate({scrollLeft: ui.value * (maxScroll / 100) },1000);
}

function handleSliderSlide(e, ui)
{
    console.log('2');
    var maxScroll = $(".content-item").width()*$(".content-item").length - $("#content-scroll").width();
    $("#content-scroll").animate({scrollLeft: ui.value * (maxScroll / 100) }, 10);
}

    $("#content-slider").slider({
        animate: true,
        slide: handleSliderSlide,
        change: handleSliderChange
    });

所以当我点击栏时,handleSliderChange 和 handleSliderSlide 都会被调用,但是当我拖动滑块时,它可以正常工作吗?我不介意取消滑块的点击功能,反正我只需要拖动

【问题讨论】:

    标签: jquery-ui slider


    【解决方案1】:

    我找到了解决方案,诀窍是在运行方法之前检查触发的事件类型。我就是这样做的

    sliderBar.slider({
                    start: checkType,
                    animate: options.animateSpeed,
                    slide: handleSliderSlide,
                    step: options.step,
                    change: handleSliderChange,
                    });
    
    function checkType(e){
                _isSlide = $(e.originalEvent.target).hasClass("ui-slider-handle");
            }
    

    【讨论】:

      猜你喜欢
      • 2021-09-15
      • 1970-01-01
      • 1970-01-01
      • 2011-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多