• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

国内首家协议开发

软芯音视解码保护平台

在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

一模一样的代码只是改成了显示系统时间为什么没有效果

var WINDOW_WIDTH= 1024;
var WINDOW_HEIGHT=768;
var RADIUS=8;
var MARGIN_TOP = 60;
var MARGIN_LEFT = 30;


var balls = [];
const colors = ["#33B5E5","#0099CC","#AA66CC","#9933CC","#99CC00","#669900","#FFBB33","#FF8800","#FF4444","#CC0000"];




window.onload=function(){
         var canvas = document.getElementById('canvas');
         var context = canvas.getContext("2d");


   canvas.width =WINDOW_WIDTH;
   canvas.height=WINDOW_HEIGHT;





    setInterval(
        function(){
            render( context );
            update();
        }
        ,
        50
    );


}


function update(){
   var freshtime = new Date();
   var freshseconds = freshtime.getSeconds();
   var freshhours =freshtime.getHours();
   var freshminutes =freshtime.getMinutes();






   if (seconds!=freshseconds) {
        
        if(parseInt(hours/10)!=parseInt(freshhours/10)){
        addBalls(MARGIN_LEFT,MARGIN_TOP,parseInt(hours/10));
        }
        if( parseInt(hours%10) != parseInt(freshhours%10)){
            addBalls( MARGIN_LEFT + 15*(RADIUS+1) , MARGIN_TOP , parseInt(hours/10) );
        }


        if( parseInt(minutes/10) != parseInt(freshminutes/10) ){
            addBalls( MARGIN_LEFT + 39*(RADIUS+1) , MARGIN_TOP , parseInt(minutes/10) );
        }
        if( parseInt(minutes%10) != parseInt(freshminutes%10) ){
            addBalls( MARGIN_LEFT + 54*(RADIUS+1) , MARGIN_TOP , parseInt(minutes%10) );
        }


        if( parseInt(seconds/10) != parseInt(freshseconds/10) ){
            addBalls( MARGIN_LEFT + 78*(RADIUS+1) , MARGIN_TOP , parseInt(seconds/10) );
        }
        if( parseInt(seconds%10) != parseInt(freshseconds%10) ){
            addBalls( MARGIN_LEFT + 93*(RADIUS+1) , MARGIN_TOP , parseInt(seconds%10) );
        }


        seconds=freshseconds;
   }
   updateBalls();


}


function updateBalls(){


    for( var i = 0 ; i < balls.length ; i ++ ){


        balls.x += balls.vx;
        balls.y += balls.vy;
        balls.vy += balls.g;


        if( balls.y >= WINDOW_HEIGHT-RADIUS ){
            balls.y = WINDOW_HEIGHT-RADIUS;
            balls.vy = - balls.vy*0.75;
        }
    }
}




function addBalls( x , y , num ){


    for( var i = 0  ; i < digit[num].length ; i ++ )
        for( var j = 0  ; j < digit[num].length ; j ++ )
            if( digit[num][j] == 1 ){
                var aBall = {
                    x:x+j*2*(RADIUS+1)+(RADIUS+1),
                    y:y+i*2*(RADIUS+1)+(RADIUS+1),
                    g:1.5+Math.random(),
                    vx:Math.pow( -1 , Math.ceil( Math.random()*1000 ) ) * 4,
                    vy:-5,
                    color: colors[ Math.floor( Math.random()*colors.length ) ]
                }


                balls.push( aBall )
            }
}




function render(cxt){


        cxt.clearRect(0,0,WINDOW_WIDTH, WINDOW_HEIGHT);


        var nowtime = new Date();


        var hours =nowtime.getHours();
        var minutes =nowtime.getMinutes();
        var seconds = nowtime.getSeconds();


        renderDigit(MARGIN_LEFT,MARGIN_TOP,parseInt(hours/10), cxt )
    renderDigit( MARGIN_LEFT , MARGIN_TOP , parseInt(hours/10) , cxt )
    renderDigit( MARGIN_LEFT + 15*(RADIUS+1) , MARGIN_TOP , parseInt(hours%10) , cxt )
    renderDigit( MARGIN_LEFT + 30*(RADIUS + 1) , MARGIN_TOP , 10 , cxt )
    renderDigit( MARGIN_LEFT + 39*(RADIUS+1) , MARGIN_TOP , parseInt(minutes/10) , cxt);
    renderDigit( MARGIN_LEFT + 54*(RADIUS+1) , MARGIN_TOP , parseInt(minutes%10) , cxt);
    renderDigit( MARGIN_LEFT + 69*(RADIUS+1) , MARGIN_TOP , 10 , cxt);
    renderDigit( MARGIN_LEFT + 78*(RADIUS+1) , MARGIN_TOP , parseInt(seconds/10) , cxt);
    renderDigit( MARGIN_LEFT + 93*(RADIUS+1) , MARGIN_TOP , parseInt(seconds%10) , cxt);


   
    for( var i = 0 ; i < balls.length ; i ++ ){
        cxt.fillStyle=balls.color;


        cxt.beginPath();
        cxt.arc( balls.x , balls.y , RADIUS , 0 , 2*Math.PI , true );
        cxt.closePath();


        cxt.fill();
    }


}


function renderDigit(x,y,num,cxt){
               
         cxt.fillStyle="rgb(0,102,113)";

         for (var i=0;i

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

发新帖

发布任务需求已有1031167位用户正在使用天盟网服务

发布分类: *
任务预算: *
需求内容: *
手机号码: *
任务商家报价为
  • 预算价 :
  • 成交价 :
  • 完工期 :
  • 质保期 :

* 最终任务项目以服务商报价、双方协商为准!