当我进入页面时,我有0个cookie开头。我做了一个if语句,说如果cookie少于10个,请隐藏升级按钮。我单击该值并将其增加1。一旦获得10个Cookie,如何显示升级按钮?是事件监听器还是什么?
var cookies = 0;
var cookieClick = 1;
function getCookie() {
cookies += cookieClick;
document.getElementById('cookieCount').innerHTML = cookies;
document.getElementById('img').style.visibility = 'visible';
}
if (cookies < 10) {
document.getElementById('up').style.visibility = 'hidden';
}
function upgrade() {
cookieClick *= 2;
document.getElementById('up').style.visibility = 'hidden';
alert('You have x2 the clicks!')
}
答案 0 :(得分:1)
您的if (cookies < 10) {
不是任何函数的一部分,因此它只会在页面加载时运行一次。您可能希望改为将其包含在getCookie()函数中,并用else
在需要时显示升级按钮。
function getCookie() {
cookies += cookieClick;
document.getElementById('cookieCount').innerHTML = cookies;
document.getElementById('img').style.visibility = 'visible';
if (cookies < 10) {
document.getElementById('up').style.visibility = 'hidden';
} else {
document.getElementById('up').style.visibility = 'visible';
}
}
(但是,如果cookie的值永远不会降低,您可以通过仅加载最初隐藏元素的页面并仅检查cookies > 10
来显示它来简化此操作。)
答案 1 :(得分:0)
是的,onClick事件侦听器可以检查您当前的cookie计数并切换您的升级按钮以显示可见性。
答案 2 :(得分:0)
<button onclick="incrementCount()"> b1 </button>
<button id="b2" style="visibility:hidden" onclick="something()">b2</button>
<script>
var cookies = 0;
var cookieClick = 0;
function incrementCount(){
cookieClick = cookieClick + 1;
console.log(cookieClick)
if(cookieClick == 10){
document.getElementById('b2').style.visibility = "visible"
}
}
function something(){
alert('i work')
}
</script>
您可以尝试这段简单的代码。