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


Posted in Javascript onDecember 23, 2013
(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>
Javascript 相关文章推荐
javascript 控制弹出窗口
Apr 10 Javascript
『jQuery』取指定url格式及分割函数应用
Apr 22 Javascript
JavaScript加入收藏夹功能(兼容IE、firefox、chrome)
May 05 Javascript
纯js代码实现未知宽高的元素在指定元素中垂直水平居中显示
Sep 12 Javascript
JS ES6多行字符串与连接字符串的表示方法
Apr 26 Javascript
详解微信小程序之scroll-view的flex布局问题
Jan 16 Javascript
jQuery使用$.extend(true,object1, object2);实现深拷贝对象的方法分析
Mar 06 jQuery
深入理解 TypeScript Reflect Metadata
Dec 12 Javascript
es6 super关键字的理解与应用实例分析
Feb 15 Javascript
js模拟实现烟花特效
Mar 10 Javascript
vue-cli3项目配置eslint代码规范的完整步骤
Sep 10 Javascript
TypeScript 运行时类型检查补充工具
Sep 28 Javascript
jquery实现图片翻页效果
Dec 23 #Javascript
js substring从右边获取指定长度字符串(示例代码)
Dec 23 #Javascript
JS判断对象是否存在的10种方法总结
Dec 23 #Javascript
JS判断表单输入是否为空(示例代码)
Dec 23 #Javascript
js中判断用户输入的值是否为空的简单实例
Dec 23 #Javascript
js中判断对象是否为空的三种实现方法
Dec 23 #Javascript
利用JS判断用户是否上网(连接网络)
Dec 23 #Javascript
You might like
php URL编码解码函数代码
2009/03/10 PHP
rephactor 优秀的PHP的重构工具
2011/06/09 PHP
php打开远程文件的方法和风险及解决方法
2013/11/12 PHP
smarty的section嵌套循环用法示例
2016/05/28 PHP
laravel Validator ajax返回错误信息的方法
2019/09/29 PHP
jqPlot Option配置对象详解
2009/07/25 Javascript
javascript 客户端验证上传图片的大小(兼容IE和火狐)
2009/08/15 Javascript
JQuery中如何传递参数如click(),change()等具体实现
2013/04/28 Javascript
js实现广告漂浮效果的小例子
2013/07/02 Javascript
JS 毫秒转时间示例代码
2013/09/22 Javascript
让jQuery与其他JavaScript库并存避免冲突的方法
2013/12/23 Javascript
我的NodeJs学习小结(一)
2014/07/06 NodeJs
jquery操作angularjs对象
2015/06/26 Javascript
javascript实现10个球随机运动、碰撞实例详解
2015/07/08 Javascript
详解jquery插件jquery.viewport.js学习使用方法
2017/09/08 jQuery
利用JavaScript的%做隔行换色的实例
2017/11/25 Javascript
javascript中的隐式调用
2018/02/10 Javascript
javascript获取元素的计算样式
2019/05/24 Javascript
Vue.js下拉菜单组件使用方法详解
2019/10/19 Javascript
解决vue做详情页跳转的时候使用created方法 数据不会更新问题
2020/07/24 Javascript
[36:29]2018DOTA2亚洲邀请赛 4.1 小组赛 A组加赛 LGD vs TNC
2018/04/02 DOTA
python静态方法实例
2015/01/14 Python
将Python的Django框架与认证系统整合的方法
2015/07/24 Python
python 采集中文乱码问题的完美解决方法
2016/09/27 Python
详解用Python处理HTML转义字符的5种方式
2017/12/27 Python
python3 读取Excel表格中的数据
2018/10/16 Python
Python3.5集合及其常见运算实例详解
2019/05/01 Python
Django连接数据库并实现读写分离过程解析
2019/11/13 Python
python tqdm实现进度条的示例代码
2020/11/10 Python
阿联酋团购网站:Groupon阿联酋
2016/10/14 全球购物
会计毕业生自荐信
2013/11/21 职场文书
实习生工作证明范本
2014/09/14 职场文书
毕业论文致谢怎么写
2015/05/14 职场文书
学生病假条范文
2015/08/17 职场文书
Linux中如何安装并部署Redis
2022/04/18 Servers
Shell中的单中括号和双中括号的用法详解
2022/12/24 Servers