反小问题(不能顺利进行)

时间:2016-04-11 18:46:33

标签: javascript counter

在下面这个jsfiddle中你会注意到递增或递减(?)不能很好地工作 - 它会关闭一个数字(向上或向下) - 我正在寻找一种方法来使它完美。

http://jsfiddle.net/Sergelie/8d3th1cb/3/

<div data-role="page">
<div data-role="content">
    <input id="button" type="button" value="+" /> 
    <input id="button2" type="button" value="-" /> 
</div>
</div>

这个想法是从0上升到无限,然后下降到0(不是现在的-1)。

var count = 1;
$("#button").on('click', function () {
$(this).val(count++).button("refresh");
});
$("#button2").on('click', function () {
if (count>-1)
$("#button").val(count--).button("refresh");
});

3 个答案:

答案 0 :(得分:1)

您可以使用前缀运算符(++ count / - count)代替(将count初始化为0):

var count = 0;
$("#button").on('click', function() {
  $(this).val(++count).button("refresh");
});
$("#button2").on('click', function() {
  if (count > 0)
    $("#button").val(--count).button("refresh");
});

<强> jsFiddle example

答案 1 :(得分:0)

使用++count--count代替以前值递增/递减,表达式的值为最终值:

var count = 1;
$("#button").on('click', function() {
    $(this).val(++count).button("refresh");
});
$("#button2").on('click', function() {
    if (count > 0) $("#button").val(--count).button("refresh");
});

另请参阅:++someVariable Vs. someVariable++ in Javascript

答案 2 :(得分:0)

var count = 0;
$("#button").on('click', function () {
    $(this).val(++count).button("refresh");
});
$("#button2").on('click', function () {
    if (count>0)
        $("#button").val(--count).button("refresh");
});

了解增量和减量运算符here的位置。