画板画圆

朴灿烈づ我的快乐病毒、 2022-06-02 08:29 335阅读 0赞

要求:在面板上画圆,此圆有数字表示,点击该圆可以消除掉。

效果图.jpg

遇到的问题

  • 一个圆有什么属性
  • 如何点击一个button生成一个圆
  • 点击该圆如何消除掉该圆
  • 生成的圆在画板里面,没有漏出去

解决方案如下

  • 一个圆有什么属性构造

    1. #disc{
    2. border: 1px solid red;
    3. width: 120px;
    4. height: 120px;
    5. border-radius: 60px;
    6. } //半径应该为直径的一半,也就是width的一半
  • 如何点击一个button生成一个圆

采用面向对象的方法来处理

  1. var number=1;
  2. function drawDisc(){
  3. var disc1=new disc($("canvas"),number);
  4. if(disc1.isValid()){
  5. disc1.draw();
  6. number++;
  7. }
  8. }
  • 点击该圆如何消除掉该圆

    1. discObj.onclick=function(){
    2. this.parentNode.removeChild(this);
    3. };
  • 生成的圆在画板里面,没有漏出去

判断是否合法

  1. this.isValid=function (argument) {
  2. if (this.centerX-this.radius<122) { //left 要大于面板的左侧
  3. return false;
  4. }
  5. if(this.centerY-this.radius<83){ //top要大于面板的顶部
  6. return false;
  7. }
  8. return true;
  9. }

总结
开始不知道怎么下手是因为不知道如何生成一个圆,就查了https://bootcss.com文档,知道圆生成的属性,然后问题就是如何点击一个button生成一个圆,用到了面向对象,new一个实例出来,在构造函数里面来描述一个圆。注意圆的半径应该是width和height的一半。然后是消除该圆也简单,用到removeChild(),最后是范围合理检查,被老师写的误导了很久,老师写的看不懂,理解他的思路理解了很久还是没有明白,索性就自己动脑想了一下,发现效果一下,还简单,就用自己的。

代码库

https://github.com/hejiahao/HTML-front

发表评论

表情:
评论列表 (有 0 条评论,335人围观)

还没有评论,来说两句吧...

相关阅读