javascript - 动态地在 Canvas 元素上绘图

标签 javascript jquery html canvas

我正在尝试学习一些新东西,并想尝试一下 Canvas 。 我有一个 Canvas 元素,可以在单击 anchor 后加载我想要绘制的图像。

HTML

<a href="javascript:" id="testClick">Click Me</a>
<canvas id="test" width=400 height=400></canvas> 

Javascript

var c = document.getElementById("test");
var ctx = c.getContext("2d");
var img = new Image();
img.onload = function() {
    ctx.drawImage(img, 0, 0);  
};
img.src = 'http://lorempixel.com/400/400/abstract';

$("#test").on('click', function() {
    var c2 = document.getElementById('test').getContext('2d');
  c2.fillStyle = '#76ff03';
  c2.beginPath();
  c2.lineTo(100, 50);
  c2.lineTo(50, 100);
  c2.lineTo(0, 90);
  c2.closePath();
  c2.fill();
});

它的目的是在 Canvas 先前加载的图像顶部绘制一个红色三 Angular 形。 不幸的是我对此一无所获。

任何帮助将不胜感激。

最佳答案

显然您正在使用“$”函数,您可能期望 JQuery 提供该函数,但您没有在文件中包含 JQuery 脚本。

<script src="https://code.jquery.com/jquery-2.2.0.min.js"></script>

除此之外,您的代码似乎可以正常工作。

顺便说一句,您正在绘制的三 Angular 形实际上是绿色的。如果你希望它是红色的,你可以设置

c2.fillStyle = '#ff0000';

关于javascript - 动态地在 Canvas 元素上绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35495969/

相关文章:

javascript - Koa2 request.body 为空

php - 更新后增加表单

javascript - Ionic 4 - Firebase - 存储不将数据发送到实时数据库

jquery - JScrollpane 不显示

javascript - 在没有服务器端脚本的情况下将 JSON 加载到本地 JavaScript 变量中?

html - 内容安全策略存在问题

javascript - 使用用户输入控制的列表项数量创建无序列表时遇到问题

javascript - 如果没有检查任何内容,则崩溃

JQuery Ajax 调用,类型为 : "POST" is received as "GET" by server

javascript - 无法使用 JQuery 删除搜索文本框的内容