JQuery:按间隔减少mousedown选择输入的值,在mouseup时重置
JQuery: Decrease value of mousedown selected input in intervals, reset on mouseup
我这里有一个有趣的。
我有几个div包含隐藏的输入值。我希望用户能够在其中一个DIV上"鼠标向下",JQuery将获得该特定DIV内输入的"id"(将是block-1, block-2, block-3等)。
这些是div
<div class="block" id="1"><input id="block-1" value="3" type="hidden"></div>
<div class="block" id="2"><input id="block-2" value="3" type="hidden"></div>
<div class="block" id="3"><input id="block-3" value="3" type="hidden"></div>
现在JQuery得到了正确的输入id,我想每200毫秒减少1个值,或者只要mousedown仍然处于活动状态。但是如果用户释放(mouseup),那么该值将重置为原始值(在本例中为3)。
如果你想知道为什么我想要这个,我原来的计划是让选定的DIV改变颜色或内容作为值减少。但是,如果该值最终为0,则DIV将被隐藏。
我试图从这个工作,但我一直被难住。
您可以使用setInterval
代替setTimeout
。
JS
$("input").mousedown(function(e) {
var self = $(this);
clearInterval(this.downTimer);
this.downTimer = setInterval(function() {
self.val(self.val() - 1);
}, 200);
}).mouseup(function(e) {
clearInterval(this.downTimer);
var val = $(this).prop("defaultValue");
$(this).val(val);
});
小提琴
注意:在示例中,我使用type=text
而不是type=hidden
,因此可以在测试中看到
相关文章:
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 可以't让我的if语句处理js中的html表单输入
- 名称输入的索引
- 如何编写HTML输入的JS内联
- 要求输入在数据列表中
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 让文本输入幻灯片显示输入时的新文本输入?然后向后滑动
- 如何将输入(type=text)从html表单传递到javascript函数
- 单击jquery清除输入值
- 而循环只设置php中输入字段中的第一个值
- 在输入字段中将最小金额设置为
- jQuery自定义验证比较多个输入的序列
- Sails.js:同时发布文本输入和一个文件
- 使用javascript检查多个输入值,并在1次检查中标记多个输入框
- 如何在输入字段中的按钮的帮助下打开日历,该字段的类型为“=”;日期”;
- 使用jquery在单击时在单元格中输入值
- Ajax文件加载和<输入>文件加载
- 是否可以将一个函数输入连接到另一个函数调用的文本
- 将值输入到对象,然后该对象推送到数组
- JQuery:按间隔减少mousedown选择输入的值,在mouseup时重置