jQuery可滚动插件的帮助

jQuery可滚动插件的帮助,jquery,jquery-ui,scroll,slider,scrollable,Jquery,Jquery Ui,Scroll,Slider,Scrollable,我遇到了一个有趣的代码示例,它允许我使用jQuery(UI)使DIV元素可滚动,可以在这里找到: 我后来把它变成了一个插件,使它更易于使用和重用。它可以工作99%,但有一个小错误-由于某种原因,当我单击滚动条时,它不会滚动DIV元素 如果我使用鼠标滚轮,它可以正常工作,但由于某些原因,点击和拖动不起作用 我正在处理的代码如下:试试这个 slide: function (event, ui) { var topValue = -((100 - ui.value) * difference

我遇到了一个有趣的代码示例,它允许我使用jQuery(UI)使DIV元素可滚动,可以在这里找到:

我后来把它变成了一个插件,使它更易于使用和重用。它可以工作99%,但有一个小错误-由于某种原因,当我单击滚动条时,它不会滚动DIV元素

如果我使用鼠标滚轮,它可以正常工作,但由于某些原因,点击和拖动不起作用

我正在处理的代码如下:

试试这个

slide: function (event, ui) {
    var topValue = -((100 - ui.value) * difference / 100);
    $(this).parents(".slider-wrap").prev(".scroll-pane").find('.scroll-content').css({
        top: topValue
    });
},
change: function (event, ui) {
    var topValue = -((100 - ui.value) * difference / 100);
    $(this).parents(".slider-wrap").prev(".scroll-pane").find('.scroll-content').css({
        top: topValue
    });
}
这个问题是,
$(This)
直接在
上引用
div.slider-vertical
调用
find
。滚动内容
没有产生任何结果,因为
。滚动内容
不是
div.slider-vertical
的子项。要修复此问题,我们需要遍历备份dom并找到prev
。滚动窗格
,然后找到我们的
。滚动内容
,并调整css值


更新。

非常感谢Mark。如果我能不止一次投票支持这一点,我肯定会的。我自己做了一个小更新,并删除了更改事件,因为它不是必需的。提琴手:没问题,米奇,很高兴我能帮忙!