【发布时间】:2022-01-03 20:10:45
【问题描述】:
我有以下代码:
function up(e) {
if(e.target.id === 'appCanvas') {
// add circle at cursor coords
}
}
canvas {
padding: 0;
margin: auto;
display: block;
width: 80%;
height: 80%;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
<html>
<head>
<meta charset="utf-8">
<title>Graphs</title>
<link rel="stylesheet" href="index.css">
<script type="module" src="application.js"></script>
</head>
<body>
<div>
<canvas id="appCanvas" style="border:5px solid #000000;"></canvas>
</div>
</body>
</html>
这将创建一个位于页面中心的 html 画布,其宽度和高度为内页的 80%。然而,在 javascript 方面,它并没有在确切的坐标处添加一个圆圈,而是将画布高度和宽度的 20% 移动。
我要怎么做才能只与 80% 的画布交互,并在画布上精确地创建圆圈?
【问题讨论】:
-
显示添加圆圈的代码。
-
画布坐标与视图坐标不同。鼠标位置在视图坐标中给出,画布绘制在画布坐标中完成。
标签: javascript html css canvas