我有两个故意重叠的画布,以绘制一个落在另一个画布上的球。我想在页面上这两个重叠的下方放置第三个画布,没有任何重叠。当持有重叠画布的 div 元素具有相对位置时,它不会阻止其他元素与其重叠。据我了解,该 div 必须相对定位,以便其中的画布可以绝对定位并重叠。
这是我的 HTML:
<div id="box" style="position: relative;"></div>
<div id="countdiv"></div>
这是JavaScript:
boxCanvas = document.createElement("canvas");
// the margins on the page are 3%
boxCanvas.width = window.innerWidth - (window.innerWidth * .06);
boxCanvas.height = document.getElementById("height").value;
boxCanvas.style = "border: 1px solid #808080; position: absolute; left: 0; top: 0; z-index: 0";
document.getElementById("box").appendChild(boxCanvas);
// second canvas for drawing balls falling
ballCanvas = document.createElement("canvas");
ballCanvas.width = boxCanvas.width;
ballCanvas.height = boxCanvas.height;
ballCanvas.style = "border: 1px solid #808080; position: absolute; left: 0; top: 0; z-index: 1";
document.getElementById("box").appendChild(ballCanvas);
这是第三个画布的 JavaScript:
countCanvas = document.createElement("canvas");
countCanvas.width = window.innerWidth - (window.innerWidth * .06);
countCanvas.height = 100;
countCanvas.style = "border: 1px solid #808080;";
document.getElementById("box").appendChild(countCanvas);
countctx = countCanvas.getContext("2d");
ballCanvas.height = boxCanvas.height;
ballCanvas.style = "border: 1px solid #808080; position: absolute; left: 0; top: 0; z-index: 1";
document.getElementById("countdiv").appendChild(ballCanvas);
当您单击 drawbox() 然后“显示命中计数”时,可以在此处看到问题。谢谢您的帮助!让我知道我是否可以提供更多信息。