<script>
var tic;
tic = 0;
</script>
<script>
var ongngic;
ongngic = 1;
</script>
<button onclick="alert(tic=tic+ongngic);">Ice Cream</button>
<button id= "b1" onclick="alert(ongngic=ongngic+1, tic=tic-10);" disabled="disabled">Buy 'Jimmy's Ice Cream Stand' - 10 Ice Cream</button>
<script>
function myFunction() {
document.getElementById("b1").enabled = true;
}
</script>
<script>
if(var tic > 9){
myFunction();
}
</script>
当我点击“冰淇淋”按钮10次时,id = 1按钮应启用但不启用。任何人都可以帮助我吗?
答案 0 :(得分:0)
您的代码存在一些问题。
首先删除你刚刚再次声明变量的if语句中的var。
脚本标记中的代码在页面加载时运行,而if语句只检查一次。而是每次单击按钮时运行一个函数。
<button onclick="iceCreamButton();">Ice Cream</button>
function iceCreamButton(){
alert(tic=tic+ongngic);
if(tic > 9){
myFunction();
}
}
此外,myFunction内的代码不正确,请将其更改为:
document.getElementById("b1").disabled = false;
答案 1 :(得分:0)
检查此代码
<script>
var tic;
tic = 0;
</script>
<script>
var ongngic;
ongngic = 1;
</script>
<button onclick="clickFun();">Ice Cream</button>
<button id= "b1" onclick="alert(ongngic=ongngic+1, tic=tic-10);" disabled="disabled">Buy 'Jimmy's Ice Cream Stand' - 10 Ice Cream</button>
<script>
function myFunction() {
document.getElementById("b1").disabled = false;
}
</script>
<script>
function clickFun(){
tic+=ongngic;
alert(tic);
if(tic > 9){
myFunction();
}
}
答案 2 :(得分:0)
var tic;
tic = 0;
var ongngic;
ongngic = 1;
function myFunction() {
document.getElementById("b1").disabled = false;
}
function cal(){
tic=tic+ongngic;
alert(tic);
if(tic > 9){
myFunction();
}
}
&#13;
<button onclick="cal()">Ice Cream</button>
<button id= "b1" onclick="alert(ongngic=ongngic+1, tic=tic-10 );" disabled="disabled">Buy 'Jimmy's Ice Cream Stand' - 10 Ice Cream</button>
&#13;
答案 3 :(得分:0)
您的代码中存在几个问题(其他人提到了一些问题),我更倾向于使用jQuery
来处理DOM
,但是当您编写pure JavaScript
中的代码,我在代码中没有使用jQuery
。出于多种原因,您应该避免inline JS
,基本上不要将HTML
与JS
尽可能地混在一起。你可以在SO:onclick=“” vs event handler
如果您不熟悉addEventListener
,可以从以下方面了解:EventTarget.addEventListener()
<强> HTML 强>
<button id="toggle">Ice Cream</button>
<button id="target" disabled="disabled">Buy 'Jimmy's Ice Cream Stand' - 10 Ice Cream</button>
<强> JS 强>
var toggle = document.getElementById('toggle'),
target = document.getElementById('target'),
tic = 0,
ongngic = 1,
myFunction = function() {
target.removeAttribute('disabled');
};
toggle.addEventListener('click', function() {
tic = tic + ongngic;
console.log(tic);
// alert(tic);
if (tic > 9) myFunction();
}, false);
target.addEventListener('click', function() {
ongngic = ongngic + 1;
tic = tic - 10;
var msg = 'tic:' + tic + ', ongngic: ' + ongngic;
console.log(msg);
// alert(msg);
}, false);
答案 4 :(得分:0)
根据我的理解,您尝试做的事情,您需要一个点击事件监听器,用于检查不同内容的两个按钮。
&#34;冰淇淋&#34;点击按钮会增加它自己的计数器并启用&#34;冰淇淋架&#34;按钮,当它击中10.&#34;冰淇淋架&#34;点击按钮会降低&#34;冰淇淋&#34;以10为单位反击并将其自己的计数器增加1.如果&#34;冰淇淋&#34;它也会使自己失效。计数器最终低于10。
var count_ice_cream = 0;
var count_ice_cream_stands = 0;
$('btn_ice_cream').addEventListener("click", function(e) {
count_ice_cream++;
if (count_ice_cream > 9) {
$('btn_ice_cream_stands').disabled = false;
}
update_totals();
});
$('btn_ice_cream_stands').addEventListener("click", function(e) {
count_ice_cream_stands++;
count_ice_cream = (count_ice_cream - 10);
$('btn_ice_cream_stands').disabled = !(count_ice_cream >= 10);
update_totals();
});
function update_totals() {
$('count_ice_cream').innerHTML = count_ice_cream;
$('count_ice_cream_stands').innerHTML = count_ice_cream_stands;
}
// Shh, don't use this in production
function $(s) {
return document.getElementById(s)
}
&#13;
body {
font: 400 1em/1.4 sans-serif;
}
&#13;
<button id="btn_ice_cream">
Ice Cream: <b id="count_ice_cream">0</b>
</button>
<br>
<button id="btn_ice_cream_stands" disabled>
Ice Cream Stands: <b id="count_ice_cream_stands">0</b>
</button>
&#13;
答案 5 :(得分:-2)
我希望这会有所帮助 - 将myFunction()
放在 -
onclick="alert(tic=tic+ongngic); myFunction()">Ice Cream</button>
并在myFunction()
-
document.getElementById("b1").disabled = false;
因此,如果您要启用该按钮,则应将.disabled
属性设置为false
。