当我点击并按住down
时,该值应该会持续减少,直到我mouseup
或mouseleave
。相反,我必须继续点击。这是jsfiddle http://jsfiddle.net/mdanz/5mdwe/8/
$('#bid-down').live('mousedown',function() {
var button = $(this);
var number = $(this).parent('div').siblings('#bid-child-container-2').find('#bid-price').val();
var newnumber = number.split('.');
button.data('interval2', setInterval(function (){
var on = button.attr('data-on');
if(newnumber[0]==2 && newnumber[1]==5) {
alert('Minimum Bid($2.50)');
}
if(on==1) {
if(newnumber[0]>2) {
if(newnumber[1]==0) {
var first = parseInt(newnumber[0])-1;
var second = 9;
}
}
if(newnumber[1]==0) {
var first = parseInt(newnumber[0])-1;
var second = 9;
}
if(newnumber[1]>0) {
var first = newnumber[0];
var second = parseInt(newnumber[1])-1;
}
if(first==2 && second==5) {
button.attr('data-on','0');
}
var finalnumber = first+'.'+second;
button.parent('div').siblings('#bid-child-container-2').find('#bid-price').val(finalnumber);
}
}, 100));
}).bind('mouseup mouseleave', function() {
clearInterval($(this).data('interval2'));
});
答案 0 :(得分:1)
你的间隔工作完美。但是,您无法在number
功能
newnumber
和setInterval
如果您添加console.log('down');
之类的内容然后查看浏览器的错误控制台,则可以看到您的setInterval
正在重复执行
使用现有代码,您需要更改几行,请参阅http://jsfiddle.net/5mdwe/23/
答案 1 :(得分:1)