当前位置:首页 > jquery

jquery 计时器

2026-04-08 10:28:44jquery

jQuery 计时器实现方法

使用 jQuery 实现计时器功能可以通过多种方式完成,以下是几种常见的方法:

使用 setInterval 实现计时器

通过 JavaScript 的 setInterval 方法结合 jQuery 操作 DOM 实现计时器功能:

var seconds = 0;
var timer;

function startTimer() {
    timer = setInterval(function() {
        seconds++;
        $('#timer').text(seconds + ' 秒');
    }, 1000);
}

function stopTimer() {
    clearInterval(timer);
}

function resetTimer() {
    clearInterval(timer);
    seconds = 0;
    $('#timer').text('0 秒');
}

HTML 部分:

<div id="timer">0 秒</div>
<button id="start">开始</button>
<button id="stop">停止</button>
<button id="reset">重置</button>

jQuery 事件绑定:

jquery 计时器

$(document).ready(function() {
    $('#start').click(startTimer);
    $('#stop').click(stopTimer);
    $('#reset').click(resetTimer);
});

使用 jQuery 插件实现计时器

jQuery 提供了多个计时器插件,如 jQuery Timer 插件:

// 引入 jQuery Timer 插件后
var timer = $.timer(function() {
    $('#timer').text(timer.getTime());
}, 1000, true);

// 开始计时器
timer.play();

// 暂停计时器
timer.pause();

// 重置计时器
timer.reset();

倒计时实现

实现一个简单的倒计时功能:

var count = 10;
var countdown = setInterval(function() {
    $('#countdown').text(count);
    count--;
    if (count < 0) {
        clearInterval(countdown);
        $('#countdown').text('时间到!');
    }
}, 1000);

HTML 部分:

jquery 计时器

<div id="countdown">10</div>

高性能计时器实现

对于需要更高精度的计时器,可以使用 requestAnimationFrame

var startTime;
var elapsedTime = 0;
var timerActive = false;

function updateTimer(timestamp) {
    if (!startTime) startTime = timestamp;
    var delta = timestamp - startTime;
    elapsedTime += delta;
    startTime = timestamp;

    $('#highres-timer').text((elapsedTime/1000).toFixed(3) + ' 秒');

    if (timerActive) {
        requestAnimationFrame(updateTimer);
    }
}

$('#start-hires').click(function() {
    timerActive = true;
    startTime = null;
    requestAnimationFrame(updateTimer);
});

$('#stop-hires').click(function() {
    timerActive = false;
});

格式化时间显示

添加时间格式化函数来美化显示:

function formatTime(seconds) {
    var hrs = Math.floor(seconds / 3600);
    var mins = Math.floor((seconds % 3600) / 60);
    var secs = seconds % 60;

    return (hrs > 0 ? hrs + ':' : '') + 
           (mins < 10 && hrs > 0 ? '0' : '') + mins + ':' + 
           (secs < 10 ? '0' : '') + secs;
}

在计时器更新时调用:

$('#formatted-timer').text(formatTime(seconds));

以上方法提供了从简单到高级的 jQuery 计时器实现方案,可以根据具体需求选择合适的实现方式。

标签: 计时器jquery
分享给朋友:

相关文章

jquery手册

jquery手册

jQuery手册概览 jQuery是一个快速、简洁的JavaScript库,简化了HTML文档遍历、事件处理、动画和Ajax交互。以下是核心功能和常用方法的分类整理。 核心方法 $(selector…

jquery 菜鸟

jquery 菜鸟

以下是针对 jQuery 初学者的基础指南,涵盖核心概念和常用操作: jQuery 简介 jQuery 是一个快速、轻量级的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和…

jquery 图片

jquery 图片

jQuery 图片操作 jQuery 提供了多种方法来操作图片,包括加载、显示、隐藏、调整尺寸等。以下是一些常见的图片操作方法: 动态加载图片 使用 attr() 方法可以动态修改图片的 src 属…

jquery 方法

jquery 方法

jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。以下是一些常用的 jQuery 方法及其用途: 选择器方法 $("selec…

jquery 表单

jquery 表单

jQuery 表单操作 使用 jQuery 操作表单可以简化 DOM 操作,提高开发效率。以下是一些常见的表单操作方法: 获取表单元素的值 使用 val() 方法可以获取或设置表单元素的值。 //…

jquery 字符串

jquery 字符串

jQuery 字符串操作 jQuery 提供了多种方法来处理字符串,尽管原生 JavaScript 已经具备强大的字符串处理能力,但结合 jQuery 可以更方便地操作 DOM 元素中的字符串内容。…