延迟mousedown间隔启动(JQuery/Javascript)
Delay mousedown interval start (JQuery / Javascript)
我正在编写一个jQuery插件,它可以在按下按钮时操纵输入字段的值。
到目前为止,我所拥有的是通过单击按钮来控制值的能力,以及在用户按住按钮时不断增加值的能力。简化后的脚本是这样的:
var element = $('#test-input');
var interval;
$('#test-up-button').on({
mousedown : function(e) {
element.val(parseInt(element.val()) + 1);
//Wait 400ms, than do the interval
interval = window.setInterval(function() {
element.val(parseInt(element.val()) + 1);
}, 200);
e.preventDefault();
},
mouseup : function() {
window.clearInterval(interval);
}
});
(您也可以在此处看到工作版本:http://jsfiddle.net/Husar/Hxhsh/#base)
然而,正如您在评论中看到的,我还希望当mousedown事件发生时,在值的初始增加之后,interval函数延迟400ms,并且仅执行。
因此,按下按钮,值变为+1,按住按钮一点,然后间隔开始滚动。
将setInterval
封装在setTimeout
中。和interval
一样,保留并清除timeout
值:
var interval, timeout;
// ...
timeout = window.setTimeout(function () {
interval = window.setInterval(function() {
element.val(parseInt(element.val()) + 1);
}, 200);
}, 400);
// ...
window.clearTimeout(timeout);
window.clearInterval(interval);
http://jsfiddle.net/coiscir/jUSg8/
开始:http://jsfiddle.net/Hxhsh/10/:)
只需添加一个setTimeout
只需使用setTimeout来延迟setInterval
mousedown: function(e) {
setTimeout(function() {
interval = window.setInterval(function() {
element.val(parseInt(element.val()) + 1);
}, 200);
}, 400);
e.preventDefault();
},
mouseup: function() {
window.clearTimeout(timeout);
window.clearInterval(interval);
}
相关文章:
- jQuery/Javascript.toggleClass/.classList.toggle的特殊行为
- 学生搜索项目jquery/javascript
- jQuery/JavaScript在线公文包表单-打印样式表
- 如何在页面加载中使用Jquery/Javascript确定img源
- DataTables合并了两个独立表中的jQuery/Javascript函数
- 在 Jquery/Javascript 中使用多个 OR (||) 运算符时如何设置变量
- 如何在jquery+javascript中只在输入框中输入数字(使用regex)
- 在Jquery/Javascript中的Array中插入Textbox值
- 使用Jquery/Javascript替换CSS属性
- Jquery/Javascript:通过按下按钮显示数组中的随机图像
- 选中复选框的Jquery/Javascript问题使用输入框操作将行从一个表添加到另一个表
- 在for循环中未获取JQuery/JavaScript对象值
- 使用jQuery/Javascript在Facebook上发送消息
- jQuery/Javascript foreach If/Else |如果为空(不执行任何操作)Else(显示forea
- 使用jQuery+Javascript识别一个空文本节点
- jquery/javascript字符串中的撇号
- jQuery/Javascript在内容可编辑的当前段落后插入元素
- 在页面加载时激活jQuery/Javascript函数
- 如何创建php函数或任何脚本/jquery Javascript,使我能够获取与复选框关联的值并添加它们
- Jquery/Javascript使用IF/ELSE语句更改img SRC