爱游戏官网 TouchSpin 组件:精炼数字输入体验

GitHub 專案頁面 下載

专为触控优化,支持滚轮与方向键,提供流畅的数字增减操作。

核心功能亮点

<input id="demo0"
       type="text"
       value="55"
       name="demo0"
       data-bts-min="0"
       data-bts-max="100"
       data-bts-init-val=""
       data-bts-step="1"
       data-bts-decimal="0"
       data-bts-step-interval="100"
       data-bts-force-step-divisibility="round"
       data-bts-step-interval-delay="500"
       data-bts-prefix=""
       data-bts-postfix=""
       data-bts-prefix-extra-class=""
       data-bts-postfix-extra-class=""
       data-bts-booster="true"
       data-bts-boostat="10"
       data-bts-max-boosted-step="false"
       data-bts-mousewheel="true"
       data-bts-button-down-class="btn btn-default"
       data-bts-button-up-class="btn btn-default"
        />
<script>
    $("input[name='demo0']").TouchSpin({
    });
</script>
<input id="demo_vertical" type="text" value="" name="demo_vertical">
<script>
    $("input[name='demo_vertical']").TouchSpin({
      verticalbuttons: true
    });
</script>
<input id="demo_vertical2" type="text" value="" name="demo_vertical2">
<script>
    $("input[name='demo_vertical2']").TouchSpin({
      verticalbuttons: true,
      verticalupclass: 'glyphicon glyphicon-plus',
      verticaldownclass: 'glyphicon glyphicon-minus'
    });
</script>
<input id="demo1" type="text" value="55" name="demo1">
<script>
    $("input[name='demo1']").TouchSpin({
        min: 0,
        max: 100,
        step: 0.1,
        decimals: 2,
        boostat: 5,
        maxboostedstep: 10,
        postfix: '%'
    });
</script>
<form class="form-horizontal" role="form">
    <div class="form-group">
        <label for="demo2" class="col-md-5 control-label">Example:</label> <input id="demo2" type="text" value="0" name="demo2" class="col-md-7 form-control">
    </div>
</form>

<script>
    $("input[name='demo2']").TouchSpin({
        min: -1000000000,
        max: 1000000000,
        stepinterval: 50,
        maxboostedstep: 10000000,
        prefix: '$'
    });
</script>
<input id="demo3" type="text" value="" name="demo3">
<script>
    $("input[name='demo3']").TouchSpin();
</script>

当输入框未设置初始值时,`initval` 配置项将自动生效。

<input id="demo3_21" type="text" value="" name="demo3_21">
<script>
    $("input[name='demo3_21']").TouchSpin({
        initval: 40
    });
</script>
<input id="demo3_22" type="text" value="33" name="demo3_22">
<script>
    $("input[name='demo3_22']").TouchSpin({
        initval: 40
    });
</script>

通过添加 `input-sm` 或 `input-lg` 类,或将其置于相应尺寸的输入框组内,可灵活调整控制器视觉大小。

<input id="demo4" type="text" value="" name="demo4" class="input-sm">
<script>
    $("input[name='demo4']").TouchSpin({
        postfix: "a button",
        postfix_extraclass: "btn btn-default"
    });
</script>
<div class="input-group input-group-lg">
    <input id="demo4_2" type="text" value="" name="demo4_2" class="form-control input-lg">
</div>
<script>
    $("input[name='demo4_2']").TouchSpin({
        postfix: "a button",
        postfix_extraclass: "btn btn-default"
    });
</script>
<div class="input-group">
    <input id="demo5" type="text" class="form-control" name="demo5" value="50">
    <div class="input-group-btn">
        <button type="button" class="btn btn-default">Action</button>
        <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
            <span class="caret"></span>
            <span class="sr-only">Toggle Dropdown</span>
        </button>
        <ul class="dropdown-menu pull-right" role="menu">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li><a href="#">Something else here</a></li>
            <li class="divider"></li>
            <li><a href="#">Separated link</a></li>
        </ul>
    </div>
</div>
<script>
    $("input[name='demo5']").TouchSpin({
        prefix: "pre",
        postfix: "post"
    });
</script>
$("input[name='demo6']").TouchSpin({
    buttondown_class: "btn btn-link",
    buttonup_class: "btn btn-link"
});
$("input[name='demo7']").TouchSpin({
    replacementval: 10
});

交互式功能演示

 

全面配置选项

选项 默认值 描述
initval "" 当输入框未设置 `value` 属性时应用。空字符串表示初始化时值为空。
replacementval "" 当用户留空或输入非数字时应用。空字符串表示值不被替换。
min 0 最小值
max 100 最大值
step 1 步长
forcestepdivisibility 'round' 强制值能被步长整除的方法:`true` | `false`
decimals 0 小数位数
stepinterval 100 刷新间隔(毫秒)
stepintervaldelay 500 开始旋转延迟(毫秒)
verticalbuttons false 启用传统上下按钮
verticalupclass 'glyphicon glyphicon-chevron-up' 垂直按钮下按钮类
verticaldownclass 'glyphicon glyphicon-chevron-down' 垂直按钮上按钮类
prefix "" 输入框前缀
postfix "" 输入框后缀
prefix_extraclass "" 前缀额外类
postfix_extraclass "" 后缀额外类
booster true 启用后,按住按钮会使微调器速度持续加快。
boostat 10 加速步数
maxboostedstep false 最大加速步数
mousewheel true 启用鼠标滚轮输入
buttondown_class 'btn btn-default' 下按钮类
buttonup_class 'btn btn-default' 上按钮类
buttondown_txt '-' 下按钮内容
buttonup_txt '+' 上按钮内容

事件触发机制

动态事件响应

组件支持以下关键事件,您可在此进行监听与响应:

事件 描述
change 通过按钮改变值时触发(当微调器达到由 `max` 或 `min` 设定的限制时,不触发)。
touchspin.on.startspin 微调器开始旋转时触发。
touchspin.on.startupspin 微调器开始向上旋转时触发。
touchspin.on.startdownspin 微调器开始向下旋转时触发。
touchspin.on.stopspin 微调器停止旋转时触发。
touchspin.on.stopupspin 微调器停止向上旋转时触发。
touchspin.on.stopdownspin 微调器停止向下旋转时触发。
touchspin.on.min 当数值触及最大值时触发。
touchspin.on.max 当数值触及最小值时触发。

可编程事件调用

您可通过以下代码段触发组件的特定功能:

示例用法: $("input").trigger("touchspin.uponce"); $("input").trigger("touchspin.updatesettings", {max: 1000});

事件 描述
touchspin.updatesettings :更新已初始化TouchSpin实例的任何设置。
touchspin.uponce 增加值
touchspin.downonce 减少值
touchspin.startupspin 向上启动
touchspin.startdownspin 向下启动
touchspin.stopspin 停止旋转

获取爱游戏官网资源

前往GitHub获取。欢迎通过GitHub issue tracker报告问题与建议,或通过官方渠道联系我们。

爱游戏官网科技有限公司用心服务每一天电话:+86 177 9824 1616邮箱:[email protected]上海市浦东新区张江路824号