重新调整Kendo RangeSlider的大小,同时最小化浏览器窗口

时间:2016-10-02 07:19:55

标签: javascript c# jquery css asp.net-mvc-4

我希望在最小化浏览器窗口

时调整kendo范围滑块的大小

当浏览器窗口最大化时,剑道范围滑块显示为

enter image description here

当浏览器窗口最小化时,剑道范围滑块显示为

enter image description here

所以,我想在浏览器窗口最小化时做到这一点,然后剑道范围滑块应该是响应的,因此在最小化浏览器窗口之后它的剑道范围滑块应该是全尺寸。

这是我的代码

 var id;
 $(window).resize(function () {
 clearTimeout(id);
 id = setTimeout(doneResizing, 5);
 });

 function doneResizing() {
 var rangeSlider = $("#slider-range").getKendoRangeSlider();
 rangeSlider.wrapper.css("width", "100%");
 rangeSlider.resize();
 }

1 个答案:

答案 0 :(得分:0)

在我的代码中,我将Slider绑定到TreeView的dataBound事件中。这样,我两次初始化了此Slider,但无法调整Slider的大小。

为防止这种双重初始化,我检查了该元素的getKendoRangeSlider()上是否为null,如果为null,则制作Slider:

var rangeSlider = $("#slider-range").getKendoRangeSlider();

if(rangeSlider == null){
    $("#slider-range").kendoRangeSlider({
        min: 10,
        max: 50,
        orientation: "horizontal",
        smallStep: 1,
        largeStep: 10
    });
}
$(window).on('resize', function () {
  var sliders = $("[data-role='slider']");
  sliders.each(function (index, ele) {
    var slider = $(ele).data("kendoSlider");
    slider.wrapper.css("width", "100%");
    slider.resize();
  });
});

KendoSlider也是这种情况