如何显示正确的百分比?

时间:2016-01-28 18:18:49

标签: javascript jquery html css

小提琴:https://jsfiddle.net/252jxsjq/1/

如何显示65而不是64.72343432 ......?

最后,如何让所有用户的点击次数相等? 例如,现在如果我在按钮上单击60次,如果我更改了电脑,则显示的时间为0。

jQuery的:

var counter = localStorage.getItem('rans') || 0;

$('.redanswer').click(function(){
     localStorage.setItem('rans', ++counter);
     $( '.bpercent' ).html( counter1 * 100 / (counter1+counter) + "%" );
     $( '.rpercent' ).html( counter * 100 / (counter1+counter) + "%" );

 });

var counter1 = localStorage.getItem('bans') || 0;

$('.blueanswer').click(function(){
     localStorage.setItem('bans', ++counter1);
     $( '.rpercent' ).text( counter * 100 / (counter1+counter) + "%" );
     $( '.bpercent' ).text( counter1 * 100 / (counter1+counter) + "%" );
});

2 个答案:

答案 0 :(得分:1)

使用JavaScript的Math.round功能。

$('.redanswer').click(function(){
 localStorage.setItem('rans', ++counter);
 $( '.bpercent' ).html( Math.round( counter1 * 100 / (counter1+counter) ) + "%" );
 $( '.rpercent' ).html( Math.round( counter * 100 / (counter1+counter) ) + "%" );
});

本地存储将状态或变量保存到客户端计算机(或称为浏览器)。 正如Mike所说,如果你想为所有设备节省价值,那么你将需要一些服务器端实现,它们可以管理全世界所有用户的点击计数器。

答案 1 :(得分:0)

您必须确保在执行counter1+counter时,您正在添加整数而不是连接字符串。 parseInt()会对此有所帮助。

此外,正如其他人所提到的那样,Math.floor()Math.round()可以为此提供帮助。

这样的事情会起作用:

counter = localStorage.getItem('rans') || 0;



$('.redanswer').click(function(){
     localStorage.setItem('rans', ++counter);
     sum = (parseInt(counter1) + parseInt(counter));
     $( '.bpercent' ).html( Math.floor(counter1 * 100 / sum) + "%" );
     $( '.rpercent' ).html( Math.floor(counter * 100 / sum) + "%" );

});

counter1 = localStorage.getItem('bans') || 0;

$('.blueanswer').click(function(){
     localStorage.setItem('bans', ++counter1);
     sum = (parseInt(counter1) + parseInt(counter));
     $( '.rpercent' ).text( Math.floor(counter * 100 / sum) + "%" );
     $( '.bpercent' ).text( Math.floor(counter1 * 100 / sum) + "%" );
});

你可以在这个JS小提琴中看到它:https://jsfiddle.net/igor_9000/252jxsjq/4/

对于跨不同计算机的永久存储,请查看一些服务器端语言并为不同用户存储信息。

希望有所帮助!