Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从15分钟开始直到按下按钮的HTML计数器?_Javascript_Jquery_Html_Countdowntimer - Fatal编程技术网

Javascript 从15分钟开始直到按下按钮的HTML计数器?

Javascript 从15分钟开始直到按下按钮的HTML计数器?,javascript,jquery,html,countdowntimer,Javascript,Jquery,Html,Countdowntimer,我正在尝试制作一个小的HTML页面,上面有两个按钮和一个下拉列表(最终我会将其乘以5) 第一个按钮启动一个小计时器,该计时器从15分钟开始,进入底片,直到再次按下该按钮 第二个按钮的作用与此完全相同,但在30分钟后开始,然后进入底片,直到再次按下按钮 下拉列表只是所有员工的列表 我发现了很多不同的计时器,但没有一个是消极的。如果我删除检查否定的if语句,它就是不起作用。谁能帮我拿一下这个负片计数器吗 $(document).ready(function () { var secs = 0

我正在尝试制作一个小的HTML页面,上面有两个按钮和一个下拉列表(最终我会将其乘以5)

第一个按钮启动一个小计时器,该计时器从15分钟开始,进入底片,直到再次按下该按钮

第二个按钮的作用与此完全相同,但在30分钟后开始,然后进入底片,直到再次按下按钮

下拉列表只是所有员工的列表

我发现了很多不同的计时器,但没有一个是消极的。如果我删除检查否定的if语句,它就是不起作用。谁能帮我拿一下这个负片计数器吗

$(document).ready(function () {
    var secs = 0;
    var id = setInterval(function () {
        secs++; console.log(secs);
        if (secs > 5) {
            clearInterval(id);
            alert('Total Time: ' + secs + ' seconds');
        }
    }, 1000);
});

######Javascript:

window.onload = function () {
    var secs = 0;
    var id = setInterval(function () {
        secs++; console.log(secs);
        if (secs > 5) {
            clearInterval(id);
            alert('Total Time: ' + secs + ' seconds');
        }
    }, 1000);
}; 

我会这样做:

var myTimer;
var started = false
var count = 15 * 60; //15 mins x 60 secs

$("button").click(function() {
  if (!started) {
    started = true;
    $(this).text("Stop");
    myTimer = setInterval(function() {
      $(".timer").text(--count);
    }, 1000);
  } else {
    started = false;
    clearInterval(myTimer);
    $(this).text("Start");
  }
});


请注意,我只实现了15分钟计时器。您可以复制30分钟的代码。

我将这样做:

var myTimer;
var started = false
var count = 15 * 60; //15 mins x 60 secs

$("button").click(function() {
  if (!started) {
    started = true;
    $(this).text("Stop");
    myTimer = setInterval(function() {
      $(".timer").text(--count);
    }, 1000);
  } else {
    started = false;
    clearInterval(myTimer);
    $(this).text("Start");
  }
});

请注意,我只实现了15分钟计时器。您可以复制30分钟的代码。

您可以试试这个

(函数(javascript){
//具有DOM及其对消函数的数组
var按钮列表=[];
/**
*切换每个按钮的计时器
*@param{HTMLElement}dom
*@param{number}计时器
*@returns{void}
*/
功能切换按钮(dom、计时器){
//在列表中查找dom的对象
var result=buttonList.find(函数(项){
return item.dom==dom;
});
//如果找到了
如果(结果){
//停止计时
result.cancel();
//将文本重置为默认值
打印(定时器格式(定时器));
//从列表中删除该对象
var索引=按钮列表。索引(结果);
按钮列表拼接(索引1);
}否则{
//如果找不到,则启动计时器并将对象添加到列表中
按钮列表({
取消:启动计时器(计时器、打印),
dom:dom
});
}
/**
*更改元素的文本
*@param{string}文本
*@returns{void}
*/
功能打印(文本){
dom.innerText=文本;
}
}
/**
*创建计时器并返回取消函数
*@param{number}计时器
*@param{函数(字符串):void}打印
*@返回{function():void}
*/
功能启动计时器(计时器、打印){
var intervalId=setInterval(onTick,1000);
返回取消;
函数onTick(){
var结果=定时器格式(定时器--);
如果(打印类型==“功能”)打印(结果);
else console.log(结果);
}
函数cancel(){
如果(有效期内){
clearInterval(intervalId);
有效期=未定义;
}
}
}
/**
*将秒数转换为[mm:ss]格式
*@param{number}计时器
*@返回{string}
*/
函数timerFormat(计时器){
var负值=假;
如果(计时器<0){
定时器=定时器*-1;
负=真;
}
var分钟=数学下限(计时器/60);
var秒=字符串(计时器%60);
变量符号=负?-:“”;
返回符号+分钟+”:“+”0“。重复(2秒。长度)+秒;
}
javascript.toggleButton=toggleButton;
})(窗口)
15:00
30:00
您可以试试这个

(函数(javascript){
//具有DOM及其对消函数的数组
var按钮列表=[];
/**
*切换每个按钮的计时器
*@param{HTMLElement}dom
*@param{number}计时器
*@returns{void}
*/
功能切换按钮(dom、计时器){
//在列表中查找dom的对象
var result=buttonList.find(函数(项){
return item.dom==dom;
});
//如果找到了
如果(结果){
//停止计时
result.cancel();
//将文本重置为默认值
打印(定时器格式(定时器));
//从列表中删除该对象
var索引=按钮列表。索引(结果);
按钮列表拼接(索引1);
}否则{
//如果找不到,则启动计时器并将对象添加到列表中
按钮列表({
取消:启动计时器(计时器、打印),
dom:dom
});
}
/**
*更改元素的文本
*@param{string}文本
*@returns{void}
*/
功能打印(文本){
dom.innerText=文本;
}
}
/**
*创建计时器并返回取消函数
*@param{number}计时器
*@param{函数(字符串):void}打印
*@返回{function():void}
*/
功能启动计时器(计时器、打印){
var intervalId=setInterval(onTick,1000);
返回取消;
函数onTick(){
var结果=定时器格式(定时器--);
如果(打印类型==“功能”)打印(结果);
else console.log(结果);
}
函数cancel(){
如果(有效期内){
clearInterval(intervalId);
有效期=未定义;
}
}
}
/**
*将秒数转换为[mm:ss]格式
*@param{number}计时器
*@返回{string}
*/
函数timerFormat(计时器){
var负值=假;
如果(计时器<0){
定时器=定时器*-1;
负=真;
}
var分钟=数学下限(计时器/60);
var秒=字符串(计时器%60);
变量符号=负?-:“”;
返回符号+分钟+”:“+”0“。重复(2秒。长度)+秒;
}
javascript.toggleButton=toggleButton;
})(窗口)
1