jquery插件jTimer(jquery定时器)使用方法

很多时候我们需要按时间间隔执行一个任务,当满足一定条件时停止执行.此插件旨在解决这一经常遇到的问题

 
代码如下:
(function ($) {
    $.extend({
        timer: function (action,context,time) {
            var _timer;
            if ($.isFunction(action)) {
                (function () {
                    _timer = setInterval(function () {
                        if (!action(context)) {
                            clearInterval(_timer);
                        }
                    }, time);
                })();
            }
        }
    });
})(jQuery);
 
 
代码如下:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>画布</title>
    <script src="../script/jquery.min.js"></script>
    <script src="../script/jTimer.js"></script>
    <style type="text/css">
        #wrap
        {
            display: table;
            margin: 0 auto;
        }
 
        #cvs
        {
            display: table-cell;
            vertical-align: middle;
        }
    </style>
    <script type="text/javascript">
        function drawRound(context) {            
            if (context.counterclockwise) {
                draw(context.x, context.y, context.r, context.start, context.start - Math.PI / 50, context.counterclockwise);
                context.start -= Math.PI / 50;
                return context.start > 0.5 * Math.PI;
            }
            else {
                draw(context.x, context.y, context.r, context.start, context.start + Math.PI / 50, context.counterclockwise);
                context.start += Math.PI / 50;
                return context.start < Math.PI;
            }
        }
        function draw(x, y, r, sAngle, eAngle, counterclockwise) {
            var cvs = document.getElementById("cvs");
            ctx = cvs.getContext("2d");
            ctx.strokeStyle = "#f00";
            ctx.beginPath();
            ctx.arc(x, y, r, sAngle, eAngle, counterclockwise);
            ctx.stroke();
        }
        $(function () {
            $.timer(drawRound, { x: 100, y: 100, r: 50, start: 1.5 * Math.PI, counterclockwise: true }, 200);
            $.timer(drawRound, { x: 100, y: 100, r: 60, start: 0, counterclockwise: false }, 200);
        });
    </script>
</head>
<body>
    <div id="wrap">
        <canvas id="cvs" height="400" width="500"></canvas>
    </div>
</body>
</html>
 
 

时间: 2024-11-03 01:13:08

jquery插件jTimer(jquery定时器)使用方法的相关文章

jquery插件jTimer(jquery定时器)使用方法_jquery

复制代码 代码如下: (function ($) {    $.extend({        timer: function (action,context,time) {            var _timer;            if ($.isFunction(action)) {                (function () {                    _timer = setInterval(function () {                 

jQuery插件之jQuery.Form.js用法实例分析(附demo示例源码)_jquery

本文实例讲述了jQuery插件之jQuery.Form.js用法.分享给大家供大家参考,具体如下: 一.jQuery.Form.js 插件的作用是实现Ajax提交表单. 方法: 1.formSerilize()  用于序列化表单中的数据,并将其自动整理成适合AJAX异步请求的URL地址格式. 2.clearForm()   清除表单中所有输入值的内容. 3.restForm    重置表单中所有的字段内容.即将所有表单中的字段恢复到页面加载时的默认值. 疑问:ajaxForm()与ajaxSub

jquery插件tytabs.jquery.min.js实现渐变TAB选项卡效果_jquery

本文实例讲述了jquery插件tytabs.jquery.min.js实现渐变TAB选项卡效果.分享给大家供大家参考.具体如下: 这款网页特效主要是tytabs.jquery.min.js插件的实例演示,一个带有漂亮渐变效果的TAB选项卡,演示了一个网页上设置两个选项卡,都是带有淡入淡出的渐变效果,为了演示效果,里面我随便弄了些文字,用时候自己删除吧. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/jquery-tytabs-tab-cha-m

jquery插件冲突(jquery.noconflict)解决方法分享

 本文主要解决了如何让多个不同的jQuery版本在同一个页面并存而不冲突的方法,需要的朋友可以参考下 许多的 JS 框架类库都选择使用$符号作为函数或变量名,jQuery是其中最为典型的一个.在 jQuery 中,$ 符号只是 window.jQuery 对象的一个引用,因此即使 $ 被删除,window.jQuery 依然是保证整个类库完整性的坚强后盾.jQuery 的 API 设计充分考虑了多框架之间的引用冲突,我们可以使用 jQuery.noConflict 方法来轻松实现控制权的移交.

jquery插件冲突(jquery.noconflict)解决方法分享_jquery

许多的 JS 框架类库都选择使用$符号作为函数或变量名,jQuery是其中最为典型的一个.在 jQuery 中,$ 符号只是 window.jQuery 对象的一个引用,因此即使 $ 被删除,window.jQuery 依然是保证整个类库完整性的坚强后盾.jQuery 的 API 设计充分考虑了多框架之间的引用冲突,我们可以使用 jQuery.noConflict 方法来轻松实现控制权的移交. jQuery.noConflict 方法包含一个可选的布尔参数[1],用以决定移交 $ 引用的同时是否

制作Web电子表格的jQuery插件:jQuery.sheet

jQuery.sheet 是一个用于创建 Web 电子表格的 jQuery插件,其功能及界面风格和微软的 Excel 非常相似,使得用户不至于对此创建的应用程序陌生,易于上手. jQuery.sheet 可以在Web应用程序上,为你实现 Excel 功能和界面,是基于网络的电子表格实现的好方法.它可以根据你的需要重新定义布局,重新样式化你需要的风格,并且实现起来都并不复杂. jQuery下载地址:http://jquery.com/ jQuery.sheet下载地址:http://jqueryp

jquery插件推荐 jquery.cookie_jquery

综合概述 通过原生的JavaScript实现处理cookies是一项头疼的工作,并且jQuery本身也不具备解决处理cookies的函数, 但是这个极其小(压缩后解决500字节左右)的jquery插件可以用来处理cookies的读写和删除. 兼容性 IE6+.Chrome.Firefox.Safari.Opera 框架依赖 依赖框架:jQuery1.0+ 模块支持 暂不支持任何模块 使用介绍 1.通过$.cookie.write方法创建cookie,示例代码如下: $.cookie.write(

jquery插件 - Aquaron jQuery插件集

Aquaron包含了10个相当不错的jQuery插件.并附有源代码,实例和详细的开发文档. post插件--简单地实现AJAX提交数据功能. PLAIN TEXT JavaScript: $.post('/script.cgi', 'q=searchstring', function($j) { var _o = eval($j); alert(_o.status); } 代码对script.cgi进行AJAX调用,以q=searchstring作为参数数据.然后执行回调函数. cloudini

jQuery插件Tmpl的简单使用方法

  JavaScript 也可以利用模版来解决这些问题,比如基于 jQuery 的 jquery.tmpl,现在已经被接受为官方的模版插件了.详细的 API 在 jQuery 的 Templates 里,内置的 demo 也尽情地演示了各种用法. 1.引入脚本 2.编写模板 2.1假设此时有一个,从后台一json格式发送来的数据 代码如下: [{"tId":1,"tName":"张三","tAge":14,"tCla