Javascript 使用js修改测验计数器

Javascript 使用js修改测验计数器,javascript,html,counter,countdown,Javascript,Html,Counter,Countdown,我目前正在开发一个测验应用程序。 简单的多选项测验,效果良好,出现问题,开始倒计时。。最后显示分数。 现在,我想为玩家添加一些“助推器”,以增强游戏性,因此我从“时间助推器”开始,它必须允许为玩家添加额外的时间,以下是计数器类: <script type="application/javascript"> var myCountdownTest = new Countdown({ time: 60, width:200, height:80, rangeHi:"

我目前正在开发一个测验应用程序。 简单的多选项测验,效果良好,出现问题,开始倒计时。。最后显示分数。 现在,我想为玩家添加一些“助推器”,以增强游戏性,因此我从“时间助推器”开始,它必须允许为玩家添加额外的时间,以下是计数器类:

<script type="application/javascript">
var myCountdownTest = new Countdown({
  time: 60, 
  width:200, 
  height:80, 
  rangeHi:"minute"
 });
 </script>
但那不起作用,我在这里错过了什么?
注:我希望此按钮只可单击一次,以便玩家可以在按钮锁定后使用此助推器。

也许我错了,但我想:

$(document).on('click','.time',function(){
myCountdownTest.time=myCountdownTest.time+20;  
});
您正在将clik事件附加到整个文档。尝试执行相同的操作,但改为按按钮:

$("#<?php echo $i; ?>").on('click','.time',function(){
myCountdownTest.time=myCountdownTest.time+20;  

$(this).unbind( "click" );
});
$(“#”).on('click','time',function(){
myCountdownTest.time=myCountdownTest.time+20;
$(此)。解除绑定(“单击”);
});

取消绑定行取消连接按钮上的clic事件,并且不再可单击。

新倒计时返回的
time
属性未显示,而是具有
bx.time
属性。也许你可以试试

$(document).on('click','.time',function(){
  myCountdownTest.bx.time=myCountdownTest.bx.time+20;  
});
我不确定这是否是正确的方法,因为我不知道库的api,但这应该可以解释为什么它没有达到您期望的效果


更新:如果在初始化后没有用于更新时间的API

有点残酷,但您可以尝试使用更新的时间参数重新初始化对象

$(document).on('click','.time',function(){
  myCountdownTest = new Countdown({
                            time: myCountdownTest.bx.time+20, 
                            width:200, 
                            height:80, 
                            rangeHi:"minute"
                            });
});

你说你的代码不起作用。发生了什么事(请将此添加到您的问题中)?我们可能必须查看
倒计时的定义及其原型才能知道如何帮助您。当我单击“添加时间”时,什么都没有发生。我在这里找到了倒计时.js,我想您在这里不会得到很多准确的帮助。您链接的代码通过使用缩短的变量名进行缩小和模糊处理,并且没有文档。你将得到的只是猜测,这些猜测可能会得出一些有效的结果。实际上,我认为原始语法是可以的-第二个参数是选择器-只是稍微不太常见的模式。。。您也可以考虑<代码> MyCurtDestTest.Bx.Time+=20;<代码>也许这个库没有API可以在初始化后更改参数。好吧,让我们忘掉这个库吧,还有没有其他清晰的js文件可以使用&实现我想要的功能?我还是JS的新手,感谢您的帮助!
$(document).on('click','.time',function(){
  myCountdownTest.bx.time=myCountdownTest.bx.time+20;  
});
$(document).on('click','.time',function(){
  myCountdownTest = new Countdown({
                            time: myCountdownTest.bx.time+20, 
                            width:200, 
                            height:80, 
                            rangeHi:"minute"
                            });
});