我想点击按setTimeout
后点按r2
按钮,将r1
的值重新设置为30,该按钮调用clearTimeout
。
我尝试了一些东西,但它将数字重新设置为30,然后回到之前的数字。
以下是代码:
$(document).ready(function () {
var numb = 30;
var numba = 100;
var timer = null;
function comptage() {
timer = setTimeout(comptage, 1000);
$('#test').html(numb);
$("#progressbar").progressbar({
value: numba
});
numb--;
numba = numba - (numba / numb);
if(numb < 0) {
numb = 0;
numba = 0;
}
};
comptage();
$("#r1").click(function () {
clearTimeout(timer);
});
$("#r2").click(function () {
timer = setTimeout(comptage, 1000);
var numb = 30;
var numba = 100;
$('#test').html(numb);
$("#progressbar").progressbar({
value: numba
});
numb--;
numba = numba - (numba / numb);
});
});
<div id="r1">bouton desactiver</div>
<div id="r2">bouton réactiver</div>
<div id ="affichage_point">
<div id="bardivs">
<div id="progressbar"></div>
<div id="test"></div>
</div>
</div>
<?php if (isset($_SESSION['timer'])){ ?>
<div id ="r6">
<?php echo $_SESSION['timer'] ?>
</div>
<br/>
<?php } ?>
答案 0 :(得分:0)
在r2
的点击处理程序中,您有:
var numb = 30;
var numba = 100;
这些将创建新的局部变量,并且不会触及全局变量。删除此处的var
以使其更新全局变量。