javascript - 试图刷新特定的 Canvas 元素

标签 javascript

我只是想刷新 Canvas 元素。

我试过了

function reload(){
var container = document.querySelectorAll('[canvas]');
var content = container.innerHTML;
container.innerHTML= content;
console.log("Refreshed"); //Watches console.

但它根本不刷新 canvas 元素?如果更容易的话,我可以在网站上使用 Jquery。

这是 Canvas 元素的 HTML。

<canvas width="800" height="500" style="position: absolute; top: 39px; left: 136px; background-color: transparent; z-index: 10;"></canvas>

如果你能帮我找到解决办法,请。

最佳答案

您应该使用querySelector获取容器

var container = document.querySelector('canvas');

querySelectorAll

var container = document.querySelectorAll('canvas')[0];

现在,您尝试通过将其内部 HTML 更改为以前已知的 HTML 值来刷新 canvas:

var content = container.innerHTML;
container.innerHTML= content;
console.log("Refreshed"); //Watches console.

如果更改 canvas 的内部 HTML 会刷新它,那么这是一种 hacky 方法,并且只有在 HTML 实际更改时,它才应该根据我的意见工作。相反,最好将 canvas 的内容存储在某处,然后清除它:

ctx.clearRect(0, 0, canvas.width, canvas.height);

再画一遍。

关于javascript - 试图刷新特定的 Canvas 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57354378/

相关文章:

javascript - 无法使 Cordova 中的 Activity 与分析 v4 一起使用

javascript - 操作 module.exports 和 require

javascript - knockout JS 将值传递给函数

javascript - 发生网络错误(例如超时、连接中断或无法访问主机)

javascript - 为什么 Chrome 开发工具控制台以两种不同的方式(单行和多行)生成日志条目?

javascript - MongoDB 查询 - 数据过滤

javascript - 数组属性在JS对象中是如何工作的

javascript - HTML 查找并停止显示子表

javascript - 如何使用 jQuery 创建多个 HTML 元素?

javascript - jQuery 选择器 : match array attribute's n-th value