gpt4 book ai didi

javascript - 记录按钮点击时间的问题

转载 作者:行者123 更新时间:2023-11-28 10:20:37 25 4
gpt4 key购买 nike

我有一个图像幻灯片实验,其中每个图像每三秒幻灯片一次。我有两个按钮,一个称为“暂停包”,另一个称为“通行包”,在三秒钟内我需要单击“暂停包”按钮。当我单击“暂停包”时,图像会暂停,当我单击“传递包”时,幻灯片将恢复(屏幕上显示另一张图像)。

我的问题是我需要记录暂停图像的秒数。一旦我点击“Pause bag”按钮,就会调用一个名为 btn_pause_click() 的函数,该函数记录图像暂停的秒数,直到点击“Pass bag”。对于第一次单击“通行证包”,我得到了图像暂停的确切秒数,然后幻灯片放映恢复,屏幕上看到另一张图像。当我再次单击它时,我得到的秒数比实际图像暂停的秒数要多。假设第一次点击“Pass bag”时,图像暂停 9.67 秒,然后在另一个图像出现后,假设该图像暂停 6.75 秒,所以当我为此单击“pass bag”时图像我需要得到 6.75。相反,我得到了 9.67+6.75。相反,我只需要记录 6.75。感谢对此的任何想法..

以下是我的“暂停包”按钮单击和“传递包”按钮单击的函数:

function display_pause()
{
if (milisec_pause>=99)
{
milisec_pause=0;
seconds_pause+=1;
}
else
milisec_pause+=1;
dpause = seconds_pause + "." + milisec_pause;
timer_pause = setTimeout("display_pause()",10);
pause_Timer = dpause;
}


function btn_pause_click()
{
display_pause();
document.myForm.btn_pause.disabled = true;
document.myForm.btn1.disabled = false;
document.myForm.btn_pass.disabled = false;
clearTimeout(Timer);
clearTimeout(msg_Timer);
}

function btn_pass_click()
{
alert(pause_Timer);
clearTimeout(pause_Timer);
pause_Timer = 0;
milisec_pause=0;
seconds_pause=0;
document.myForm.btn_pass.disabled = true;
document.myForm.btn1.disabled = false;
document.myForm.btn_pause.disabled = false;
Timer = setTimeout("slideit()",800);
if(flag == 1)
msg_Timer = setTimeout("msg(flag)",500);
}

最佳答案

这里似乎有问题:

  1. timer_pause你的计时器是:

    timer_pause = setTimeout("display_pause()",10); 
  2. pause_Timer是当前暂停时间在 <sec>.<millisec> 中的字符串

    dpause = seconds_pause + "." + milisec_pause;
    //...
    pause_Timer = dpause;

但是

  1. 您正在清理 pause_Timer timer_pause这是计时器的变量

    clearTimeout(pause_Timer);
  2. 您还设置了 pause_Timer0

    pause_Timer = 0;
<小时/>

不考虑其他问题(如果有),您至少应该进行以下更改:

clearTimeout(timer_pause);

接下来,考虑更具描述性且不太可能相互混淆的变量名称!

关于javascript - 记录按钮点击时间的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5738827/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com