【问题标题】:How can I toggle between three canvases (HTML)?如何在三个画布 (HTML) 之间切换?
【发布时间】:2023-04-11 09:25:01
【问题描述】:

https://www.codepile.net/pile/Lobdr3DV

这是我的代码的链接,我实际上是想在彼此之上制作三个画布。每个画布将有 1 个按钮,单击该按钮将隐藏其他两个画布并使活动的画布可见。

function swapCanvases1() {
  canvas.style.visibility='hidden';
  canvas2.style.visibility='hidden';
  canvas3.style.visibility='visible';
}

function swapCanvases2() {
  canvas.style.visibility='hidden';
  canvas2.style.visibility='visible';
  canvas3.style.visibility='hidden';
}

function swapCanvases3() {
  canvas.style.visibility='visible';
  canvas2.style.visibility='hidden';
  canvas3.style.visibility='hidden';
}

我试过这样做,但如果你尝试在浏览器中运行我的代码,所有画布并排显示在屏幕上,即使我按下相应的按钮也不会隐藏。

一些帮助会很棒,谢谢。

【问题讨论】:

    标签: html canvas html5-canvas


    【解决方案1】:

    代码可能需要进行一些严重的重构,无论如何:img.src=... 似乎是问题所在。没有设置 img 变量,因此 onclick 函数最终会出错(因此这些交换函数甚至不运行),您应该在开发者控制台 (F12) 中看到。

    还可以考虑使用display='none/block'; 而不是visibility='visible/hidden'; 或将画布position: absolute; 设置为重叠。

    【讨论】:

    • 太棒了,谢谢你的评论。我尝试实施您建议的一些更改。现在我只是摆脱了图像,而只是改变了球的颜色。画布现在重叠,但当我尝试从一个更改为另一个时,它似乎不起作用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-15
    相关资源
    最近更新 更多