javascript - 用js在div里面插入 Canvas

标签 javascript

我有这部分代码

const canvas = document.createElement('canvas');
const context = canvas.getContext('2d');
let windowWidth = canvas.width = window.innerWidth;
let windowHeight = canvas.height = window.innerHeight;
canvas.id = 'canvas';
document.body.insertBefore(canvas, document.body.firstChild);

问题是我无法将它添加到 div 中,例如 <div class="ip_first_block">CANVAS SHOULD BE HERE</div> 我真的刚刚开始我的 js 之路,所以我主要是将各个部分放在一起并进行编辑。

这是需要更改的部分,但我找不到正确的方法

document.body.insertBefore(canvas, document.body.firstChild);

这是我的尝试之一......

var canvas = document.createElement('canvas');
var firstblock = document.getElementsById('ifb');
var context = canvas.getContext('2d');
var windowWidth = canvas.width = window.innerWidth;
var windowHeight = canvas.height = window.innerHeight;
canvas.id = 'canvas';
firstblock.innerHTML += canvas;

最佳答案

canvas 是一个元素而不是字符串。您应该使用适当的 API 将其附加为子项: firstblock.appendChild( Canvas )

document.addEventListener('DOMContentLoaded', () => {
  var canvas = document.createElement('canvas')

  var container = document.querySelector('.ip_first_block')

  container.appendChild(canvas)

})

关于javascript - 用js在div里面插入 Canvas ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49784041/

相关文章:

javascript - jCrop HTML5 Canvas Base64

javascript - jQuery,根据数组检查类

javascript - 为什么 AUI 的 Dropdown 在文本字段验证之前需要验证火拳

javascript - 聊天系统实现

javascript - 仅使用 JavaScript 的 Razor View

javascript - Webpack 和 Babel 意外导入 token

javascript - 间隔两个 div 并阻止它们相互连接

javascript - 使用 localStorage.getItem() 获取不同属性的值?

javascript - 未捕获错误 : Syntax error, 无法识别的表达式:a[href*=#]:not([href=#])

javascript - 将 Javascript 数组序列化为 Laravel 缓存的 PHP 字符串