Javascript 使用jquery将数字增加1?
html:Javascript 使用jquery将数字增加1?,javascript,jquery,Javascript,Jquery,html: 5 如何使用jquery在每次单击li时增加它们之间的数量?谢谢您想看看或。以下是一个例子: <li class="fav light_gray_serif">5</li> 只需使用一个插件 var num = parseInt($.trim($(this).html())); $(this).html(++num) 然后打电话 (function($) { $.extend($.fn, { "addOne": function
5
如何使用jquery在每次单击li时增加它们之间的数量?谢谢您想看看或。以下是一个例子:
<li class="fav light_gray_serif">5</li>
只需使用一个插件
var num = parseInt($.trim($(this).html()));
$(this).html(++num)
然后打电话
(function($) {
$.extend($.fn, {
"addOne": function() {
var num = parseInt(this.text(), 10);
this.text(++num);
},
"subtractOne": function() {
var num = parseInt(this.text(), 10);
this.text(--num);
}
});
}(jQuery))
HTML:
单击现有按钮时,可以增加计数器,如下所示:
$('#counter').text(Number($('#counter').text())+1);
+1,这是迄今为止最好的答案(因为使用了
Number
而不是parseInt
,以及text()
而不是html()
),但到目前为止还没有人投票?@box9愿意解释为什么Number
比parseInt
更好吗?为什么text()
比html()
好?@Scrum,关于Number
vsparseInt
的观点确实取决于,但通常Number
在语义上更正确,因为它拒绝1abc2
等字符串,而parseInt
仍将解析第一部分。同样,text()
在语义上更为正确,因为它代表了文档中人类可读的部分,但在有人出于任何目的(从阅读的角度来看;对于输出,除非字符串需要转义)决定将数字包装在一个跨度中时也更安全。
(function($) {
$.extend($.fn, {
"addOne": function() {
var num = parseInt(this.text(), 10);
this.text(++num);
},
"subtractOne": function() {
var num = parseInt(this.text(), 10);
this.text(--num);
}
});
}(jQuery))
$(".fav").live("click", function(e) {
$(this).toggleClass("highlight").addOne();
});
<span id="counter">0</span>
$('#counter').text(Number($('#counter').text())+1);
$(document).on('click','#your-button', function(){
$('#counter').text(Number($('#counter').text())+1);
});