0

我正在使用 javascript 倒计时函数在名为 sec 的文本框中显示时间

我有两个按钮 prev 和 next 如果我按下 prev 按钮,我想减去 10 个数字,如果我单击 next 按钮,则添加 10 个数字脚本很好并且可以完美地计算数字,但我需要将添加的数字更改为整数就像如果秒值是 56 并且我单击上一个按钮,所以负值将是 46,但我需要它来更改 40。所以如果秒为 46,下一个按钮将添加 10 个数字并变为 56,但我需要它60起这个怎么办?这是我的脚本

<script type="text/javascript">
var t;

function countdown()
{
    $('#sec').val(parseInt($('#sec').val()) + 1);
    t = setTimeout("countdown();",1000);
    sec = document.getElementById('sec');
    if($('#sec').val()>=1 && $('#sec').val()<10)    {$('.thought').load('somefile.php?limit=0');    }
    else if($('#sec').val()>=10 && $('#sec').val()<20){$('.thought').load('somefile.php?limit=1');}
    else if($('#sec').val()>=20 && $('#sec').val()<30){$('.thought').load('somefile.php?limit=2');}
    else if($('#sec').val()>=30 && $('#sec').val()<40){$('.thought').load('somefile.php?limit=3');}
}

$(document).ready(function(){
    countdown();
    $('.thought_prev_btn').click(function(){
        var second = Math.floor(parseInt($('#sec').val()) - 10);
        $('#sec').val(second);
     });
});
</script>

我使用math.floor()了函数,但它只适用于十进制值

4

1 回答 1

1

要使用除单位以外的任何精度的floorceil,除以相关的 10 次方,然后再乘以。我喜欢使用这些辅助函数:

function floor(num,power) {
    var p = Math.pow(10,power||0);
    return Math.floor(num/p)*p;
}

function ceil是相似的,只是用Math.ceil而不是Math.floor

然后我可以打电话,例如,floor(123,1)我会得到120
floor(12345,3)将返回12000
floor(12.345,-1)将返回12.3

基本上,第二个参数是小数点左边的位置数,该数字应该被截断。

于 2013-03-06T07:51:10.170 回答