javascript - canvas制作的时钟不同地方设置setInterval,不清楚为什么会效果不同。
怪我咯
怪我咯 2017-04-10 16:06:47
[JavaScript讨论组]

现象:

用canvas制作时钟,用不同的方式来调用setInterval,效果不同。(详细代码在后面)

用法一:

setInterval(drawClock,1000);  
//下一秒的时候,之前的时分秒针会消失,出现新的时分秒针(我想要的效果)

function drawClock(){
    drawFace();
    drawNumbers();
    drawTime(); 
   //下一秒的时候,之前的时分秒针会消失,出现新的时分秒针(我想要的效果)
}

用法二:

drawClock();  
//上一秒的时分秒针没有消失(不想要的效果)

function drawClock(){
    drawFace();
    drawNumbers();
    setInterval(drawTime,1000);    
    //上一秒的时分秒针没有消失(不想要的效果
}

问题:

为什么用方法一可以清除掉上一秒的时分秒针?而方法二不可以?

Code Here:







    


怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(1)
阿神

问了其他网友:因为用方法一,会覆盖原来的;方法二没有覆盖。所以看上去是正确的。这个启发了我对canvas覆盖/clear的性能关注。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号