P5.js 单击其他任何位置以隐藏js p5

P5.js 单击其他任何位置以隐藏js p5,p5.js,P5.js,使用js p5 试图制作一个椭圆,当我点击它时,我会得到一个小窗口,其中包含som数据或文本,我希望当我点击其他任何地方时,能够隐藏这个小窗口。 比如当你在谷歌地图上点击一个位置时,你会得到位置信息,当你点击其他任何地方时,这个信息窗口会隐藏起来,你可以尝试点击另一个位置 我想用JSP5得到这个 谢谢你我想你可以这样做。你可以创建一个对象,不管它叫什么,在其中有一个x和y变量(比如这个.x和这个.y,我想不起名字rn)和一个点击的变量,这个变量是真是假。在主绘制循环之外,您可以使用mousePr

使用js p5 试图制作一个椭圆,当我点击它时,我会得到一个小窗口,其中包含som数据或文本,我希望当我点击其他任何地方时,能够隐藏这个小窗口。 比如当你在谷歌地图上点击一个位置时,你会得到位置信息,当你点击其他任何地方时,这个信息窗口会隐藏起来,你可以尝试点击另一个位置

我想用JSP5得到这个


谢谢你

我想你可以这样做。你可以创建一个对象,不管它叫什么,在其中有一个x和y变量(比如这个.x和这个.y,我想不起名字rn)和一个点击的变量,这个变量是真是假。在主绘制循环之外,您可以使用mousePressed函数并编写如下内容:

function mousePressed() {
  if (mouseX > this.x - [the width of the ellipse / 2] && mousex < this.x + [width of ellipse / 2] && mouseY > this.y - [height of the ellipse / 2] && mouseY < this.y + [height of ellipse / 2]) {
    if (!ellipse.clicked) {
      ellipse.clikced = true;
    }
  } else {
    ellipse.clicked = false;
  }
}
或者类似的东西


我希望这能起作用,并帮助你摆脱困境

非常感谢你,我会试试这个。它不起作用,我想我不知道如何写这段代码,我是p5新手。我错过了什么是的,没问题。很抱歉,我没有看到其他评论,但很高兴我能帮上忙
display() {
  ellipse(this.x, this.y, [width], [lenght]);
  // placeholder for the menu
  if (this.clicked) {
    rect(this.x, this.y, 30, 50);
  }
}