加/减计数器,结果加号(jquery)

时间:2017-09-01 11:54:55

标签: javascript jquery counter

我得到了这个简单的函数来计算点击次数(加或减)。它工作正常。 事实是负值出现在它们前面的减号(例如-3),但对于正值则不一样。

有没有办法让积极的结果在开头显示加号(例如。+3)?



$('#increase').click(function() {
  $('#output').html(function(i, val) {
    return val * 1 + 1
  });
});

$('#decrease').click(function() {
  $('#output').html(function(i, val) {
    return val * 1 - 1
  });
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="increase" type="button">+</button>
<button id="decrease" type="button">-</button>
<div id="output">10</div>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:4)

要实现此目的,您只需检查该值是否为> 0,如果是,则为其添加+

另请注意,您可以使用按钮上的data属性来干扰代码,以指定要递增的值。这意味着您可以在两个按钮上使用单个事件处理程序,如下所示:

$('button').click(function() {
  var $btn = $(this);
  $('#output').html(function(i, val) {
    val = val * 1 + $btn.data('inc');
    return (val <= 0 ? '' : '+') + val;
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="increase" type="button" data-inc="1">+</button>
<button id="decrease" type="button" data-inc="-1">-</button>
<div id="output">+10</div>

答案 1 :(得分:0)

$('#increase').click(function() {
    $('#output').html(function(i, val) { 
        if (val < 11) {
            var ret = val * 1 + 1;
        }
        return ret > 0 ? "+" + ret : ret;
    });
});
$('#decrease').click(function() {
    $('#output').html(function(i, val) { 
        if(val > -11) {
           var ret = val * 1 - 1;
        }
        return ret > 0 ? "+" + ret : ret;
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="increase" type="button">+</button>
<button id="decrease" type="button">-</button>
<div id="output">+10</div>