为了账号安全,请及时绑定邮箱和手机立即绑定

连成一条线也不会弹出窗口,而且使用alert(count),显示为0,求解啊

 <script>

    var chess=document.getElementById("canvas");

    var cxt=chess.getContext('2d');

      var me=true;

      var gameover=false;

      var count=0;

      //落子不重叠设置初始化

      var chessBoard=[];

      for(var i=0;i<15;i++){

      chessBoard[i]=[];

      for(var j=0;j<15;j++){

        chessBoard[i][j]=0;

      }

}

//赢法数组定义及初始化

var wins=[];

for(var i=0;i<15;i++){

  wins[i]=[];

  for(var j=0;j<15;j++){

    wins[i][j]=[];}

}




//横线赢法

for(var i=0;j<15;i++){

  for(var j=0;j<11;j++){

    for(var k=0;k<5;k++){

      wins[i][j+k][count]=true;


    }

    count++;

  }

}

//竖线赢法

for(var i=0;j<15;i++){

  for(var j=0;j<11;j++){

    for(var k=0;k<5;k++){

      wins[j+k][i][count]=true;

    }

    count++;

  }

}


//正斜线赢法

for(var i=0;j<11;i++){

  for(var j=0;j<11;j++){

    for(var k=0;k<5;k++){

      wins[i+k][j+k][count]=true;

    }

    count++;

  }

}

//反斜线赢法

for(var i=0;j<11;i++){

  for(var j=14;j>3;j--){

    for(var k=0;k<5;k++){

      wins[i+k][j-k][count]=true;

    }

    count++;

  }

}

//赢法的统计数组及初始化

var myWin=[];

var computerWin=[];

for(var i=0;i<count;i++){

  myWin[i]=0;

  computerWin[i]=0;

}

    cxt.strokeStyle="#BFBFBF";

    chessboard();

      

      //获取位置

      chess.onclick=function (e){

        if(gameover){

          return;

        }

        var x=e.offsetX;

        var y=e.offsetY;

        var i=Math.floor(x/30);

        var j=Math.floor(y/30);

        if(chessBoard[i][j]==0){

          oneStep(i,j,me);

          if(me){

            chessBoard[i][j]=1;

          }

          else{

            chessBoard[i][j]=2;

          }  me=!me;

          for(var k=0;k<count;k++){

            if(wins[i][j][k]){

              myWin[k]++;

              computerWin[k]=6;

              if(myWin[k]==5){

                window.alert('hello');

                gameover=true;

              }

            }

          }

          

        }

      }

      //绘制棋盘

    function chessboard(){


    for(var i=0;i<15;i++)

    {

    cxt.moveTo(15+i*30,15);

    cxt.lineTo(15+i*30,435);

    cxt.stroke();

    cxt.moveTo(15,15+i*30);

    cxt.lineTo(435,15+i*30);

    cxt.stroke();

    }

    }

    //每一步棋子的位置及颜色绘制

          function oneStep(i,j,me){

          cxt.beginPath();

            //棋子大小及位置

          cxt.arc(15+i*30,15+j*30,13,0,2*Math.PI);

          cxt.closePath();

            //颜色径向渐变

          var gradient=cxt.createRadialGradient(15+i*30+2,15+j*30-2,13,15+i*30+2,15+j*30-2,0);

          if(me){

          gradient.addColorStop(0,"#0A0A0A");

          gradient.addColorStop(1,"#636766");

          }

          else{

          gradient.addColorStop(0,"#D1D1D1");

          gradient.addColorStop(1,"#F9F9F9");

          }

         

          cxt.fillStyle=gradient;

          cxt.fill();

          }

    </script>


正在回答

1 回答

所有的赢法for(var i=0;j<15;i++){中的i写成j了

0 回复 有任何疑惑可以回复我~
#1

慕用6149400 提问者

非常感谢!
2017-05-25 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

连成一条线也不会弹出窗口,而且使用alert(count),显示为0,求解啊

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信