2016-12-05 251 views
-1

我有JavaScript代码来计算按钮点击次数。但是重新加载页面时,计数器设置为零。Javascript函数计数按钮点击?

是否有任何解决方案来计算按钮点击,并在页面重新加载时保持该变量值?

var count = 0; 
 
var button = document.getElementById("countButton"); 
 
var display = document.getElementById("displayCount"); 
 
// Line commented out as SO does not allow it 
 
// window.localStorage.setItem("on_load_counter", count); 
 
button.onclick = function() { 
 
    count++; 
 
    display.innerHTML = count; 
 
}
<input type="button" value="Count" id="countButton" /> 
 
<p>The button was pressed <span id="displayCount">0</span> times.</p>

+2

使用[Web存储API(https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API/Using_the_Web_Storage_API) – Satpal

+1

可以节省柜台在饼干或HTML5存储\ –

+1

利用会话存储或本地存储的那个Satpal是正确的 – Jigar7521

回答

0

这是所有ü需要:d

var count = localStorage.on_load_counter || 0; 
    var button = document.getElementById("countButton"); 
    var display = document.getElementById("displayCount"); 

    button.onclick = function(){ 
    localStorage.on_load_counter = display.innerHTML = ++count; 
    } 
0

使用变量localStorage.clickcount,你可以每次点击都递增。

看到这个jsfiddle

-1

修补它与我的一些DataSave API和它的工作原理,在这里你去!

<body onload="loadStats();"> 
<input type="button" value="Count" id="countButton" /> 
<p>The button was pressed <span id="displayCount">0</span> times.</p> 

<script type="text/javascript"> 
var count = 0; 
var button = document.getElementById("countButton"); 
var display = document.getElementById("displayCount"); 
function loadStats(){ 
if(window.localStorage.getItem('count')){ 
count = window.localStorage.getItem('count') 
display.innerHTML = count; 
} else { 
window.localStorage.setItem('count', 0) 
} //Checks if data has been saved before so Count value doesnt become null. 
} 
window.localStorage.setItem("on_load_counter", count); 
button.onclick = function(){ 
count++; 
window.localStorage.setItem("count", count) 
display.innerHTML = count; 
} 
</script> 
</body> 
+0

嗨这个代码现在工作。但现在的问题是它在我的博客上无法正常工作。不同PC计数器的意义从零开始。我想在我的博客上访问这个。 –