将步骤数限制为第一个和最后一个数组元素

Martyna VA

我有一个值数组,可以通过操纵滑块ui手柄或单击将值增加/减少一步的按钮来选择。问题是当它到达最后一个/第一个元素时,如果再单击添加的一个步骤,则该值将变为空白。我正在寻找一种解决方案,以通过数组或类似元素的数量限制点击次数。

小提琴

JS

$(function () {
    var sizes = [
        "0 years",
        "1 year",
        "2 years",
        "3 years",
        "4 years",
        "5 years",
        "6 years",
        "7 years"
    ];

    $("#slider-range-max3").slider(
        {
            range: "max",
            min: 0,
            max: sizes.length - 1,
            step: 1,
            create: function(event, ui) {
                $("#sup").val(sizes[0]);
            },
            slide: function (event, ui) {
                $("#sup").val(sizes[ui.value]);
                $("#sup").text(sizes[ui.value]);
                var value = $(this).val(),
                button = $("#sup").val(sizes[ui.value]);
                setTimeout(function () {
                    /* update text after jQM refreshes slider */
                    button.text(custom[value]);
                }, 0);
            }
        }
    );

    $("#plus3").click(function () {
        var value = $("#slider-range-max3").slider("value");
        var step = $("#slider-range-max3").slider("option", "step");

        $("#slider-range-max3").slider("value", value + step);
        $("#sup").val(sizes[value+step]).text(sizes[value+step]);
    });

    $("#minus3").click(function () {
        var value = $("#slider-range-max3").slider("value")
        var step = $("#slider-range-max3").slider("option", "step");

        $("#slider-range-max3").slider("value", value - step);
        $("#sup").val(sizes[value-step]).text(sizes[value-step]);
    });
});

的HTML

<div id="quote-input" class="slider-input">
    <div id="minus3" class="minus"><span>-</span></div>
    <div id="plus3" class="plus">+</div>
    <input type="text" id="sup" class="slider-value">

    <div id="slider-range-max3" class="slider">
    <span class="ui-slider-handle"></span>
</div>
毛伊曼

它可以简单地检查函数内部的数组长度

$("#plus3").click(function () {
    var value = $("#slider-range-max3").slider("value");
    var step = $("#slider-range-max3").slider("option", "step");

if (value === sizes.length-1)
return;//it bails out here in case


  $("#slider-range-max3").slider("value", value + step);
  $("#sup").val(sizes[value+step]).text(sizes[value+step]);

  });

小提琴

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

忽略数组中的第一个和最后一个数字

保留数组的第一个索引元素和最后一个索引元素

找到一个数组的第一个和最后一个索引,其元素从和到的顺序总和最大

查找大于阈值的NumPy数组的第一个和最后一个元素

删除数组中的第一个和最后一个元素

减少数组到第一个和最后一个元素的元组?

NumPy数组中的第一个和最后一个元素

交换数组的所有元素,除了第一个和最后一个

排除数组的第一个和最后一个元素

C struct指针从第一个元素到最后一个元素的步骤

需要一个数组,其中新数组的第一个元素=除第一个元素以外的所有元素的和

将数组中的第一个和最后一个值分组(连续的值与第一个和最后一个元素分组)

C ++:我有两个数组,其中第一个元素和最后一个元素具有相同的内存地址

显示第一个数组元素 - ReactJS

如何返回带有第一个和最后一个数字的数组?

python数组中None之间的第一个和最后一个数字

为什么我的代码只比较数组的第一个和最后一个数字 - Java

减少ndarray的第一个维度-保留第一个和最后一个元素

选择数组中N个均匀间隔的元素,包括第一个和最后一个

数组中除第一个和最后一个元素外的其他元素

如何检查数组c ++中的第一个元素和最后一个元素

从最后一个元素到第一个元素添加到数组

将数字字符串中的第一个数字限制为 2 到 9

如何使readlines限制为文件中的第一个数字?

TSQL - 范围内的第一个和最后一个数字

交替打印最后一个元素和第一个元素(JavaScript)

如何识别对象数组中链的第一个和最后一个元素

以ES6方式获取数组中的第一个和最后一个元素

获取除第一个和最后一个以外的所有数组元素