JQuery:如何重绘滑块?

时间:2011-03-18 19:59:40

标签: jquery plugins slider redraw recreate

我非常需要你的帮助,因为我花了太多时间试图修改Jquery Slider插件但没有成功。

我正在使用此滑块插件:http://blog.egorkhmelev.com/2010/03/jquery-slider-update/

我要做的是在点击时重新绘制这个JQuery Slider。当用户点击时 - 传递具有新比例和指针位置的新设置。重绘仅部分工作,仅更改一个指针位置和比例。我一定在代码中遗漏了一些内容,或者没有足够的Jquery知识来解决这个问题。

请注意:此插件尚未实现Redraw,这是我想要添加的新功能。

很多人在官方网站上提出了同样的问题,但似乎没有任何支持了。所以,如果你能帮助我找到一个错误 - 我保证再次在网上分享这个解决方案。

非常感谢你! 开尔文

1 个答案:

答案 0 :(得分:3)

试试这段代码:

/* -------- REDRAW SLIDER CODE -------- */
case "redraw":
    //self.domNode.remove(); // remove slider
    self.domNode.remove(); // remove slider
    if (isDefAndNotNull(args[1])) {
        $.extend(true, self.settings, args[1]);
        self.settings.interval = self.settings.to - self.settings.from; //calculate new interval
        self.settings.value = self.inputNode.attr("value"); // set new pointers position
        self.is = {
            init: false
        };
        self.o = {};
        }

    self.create(); // re-create slider with new settings
    break; 
/* -------- END OF REDRAW SLIDER CODE -------- */

我刚添加了代码以清除某些内部状态self.is.initself.o

此处示例:

http://jsfiddle.net/jtbowden/ZEjSv/