简体   繁体   English

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

[英]Re-size the Kendo RangeSlider while Minimize the window of browser

I want to resize the kendo range slider when minimize the window of browser 我想在最小化浏览器窗口时调整kendo范围滑块的大小

When browser window is maximize kendo range slider show be like 当浏览器窗口最大化时,剑道范围滑块显示如

在此输入图像描述

When browser window is minimize kendo range slider show be like 当浏览器窗口最小化时,剑道范围滑块显示为

在此输入图像描述

So, just I want to do that when browser window minimize then kendo range slider should be responsive and hence after minimize the browser window it kendo range slider should be full size. 所以,只是我想在浏览器窗口最小化时做到这一点,然后剑道范围滑块应该是响应的,因此在最小化浏览器窗口之后它的剑道范围滑块应该是全尺寸。

Here is my code 这是我的代码

 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();
 }

In my code I binded the Slider in the dataBound Event of a TreeView. 在我的代码中,我在TreeView的dataBound事件中绑定了Slider。 This way I initialised this Slider twice, and wasn't able to resize my Slider. 这样我初始化了这个Slider两次,并且无法调整Slider的大小。

To prevent this double initialization I checked for null on getKendoRangeSlider() on that element if null then make 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();
  });
});

This was also the case for KendoSlider KendoSlider也是如此

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM